Midpoint on a great circle

Time bar (total: 13.2s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage

analyze588.0ms (4.5%)

Memory
16.1MiB live, 1 154.8MiB allocated; 143ms collecting garbage
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
9.4%9.4%90.4%0.2%0%0%0%9
9.4%9.4%90.4%0.2%0%0%0%10
10.9%10.9%88.9%0.2%0%0%0%11
10.9%10.9%88.9%0.2%0%0%0%12
Compiler

Compiled 22 to 16 computations (27.3% saved)

sample5.8s (43.7%)

Memory
190.0MiB live, 7 075.7MiB allocated; 2.4s collecting garbage
Samples
4.6s4 505×1valid
669.0ms3 746×0valid
13.0ms2valid
Precisions
Click to see histograms. Total time spent on operations: 5.0s
ival-cos: 3.3s (66.7% of total)
ival-sin: 589.0ms (11.9% of total)
adjust: 431.0ms (8.7% of total)
ival-mult!: 265.0ms (5.3% of total)
ival-atan2: 251.0ms (5.1% of total)
ival-add!: 73.0ms (1.5% of total)
ival-sub!: 42.0ms (0.8% of total)
Bogosity

preprocess124.0ms (0.9%)

Memory
-34.9MiB live, 76.0MiB allocated; 106ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
095308
1432305
25156305
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
98.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Symmetry

(abs phi1)

(abs phi2)

Compiler

Compiled 32 to 28 computations (12.5% saved)

series28.0ms (0.2%)

Memory
-1.7MiB live, 43.4MiB allocated; 12ms collecting garbage
Counts
14 → 96
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
lambda1
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(cos.f64 phi2)
phi2
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda2
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
(cos.f64 phi1)
phi1
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
Outputs
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx lambda1 #s(hole binary64 lambda1))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg lambda2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) lambda1)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (- lambda1 lambda2)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))) lambda1)) 1)))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx lambda2 #s(hole binary64 lambda2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos lambda1) (cos phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (cos phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (cos phi1) #s(hole binary64 1))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 phi1))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (cos (- lambda1 lambda2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2)))))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2))))))))))
#s(approx (cos phi2) #s(hole binary64 (cos phi2)))
Calls

12 calls:

TimeVariablePointExpression
8.0ms
phi2
@-inf
((+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) phi2 (sin (- lambda1 lambda2)) (- lambda1 lambda2) lambda2 (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) phi1 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)))
2.0ms
lambda1
@-inf
((+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) phi2 (sin (- lambda1 lambda2)) (- lambda1 lambda2) lambda2 (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) phi1 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)))
2.0ms
lambda1
@inf
((+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) phi2 (sin (- lambda1 lambda2)) (- lambda1 lambda2) lambda2 (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) phi1 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)))
2.0ms
phi2
@inf
((+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) phi2 (sin (- lambda1 lambda2)) (- lambda1 lambda2) lambda2 (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) phi1 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)))
2.0ms
lambda2
@-inf
((+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) phi2 (sin (- lambda1 lambda2)) (- lambda1 lambda2) lambda2 (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) phi1 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)))

rewrite291.0ms (2.2%)

Memory
25.5MiB live, 254.4MiB allocated; 95ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03652297
03852215
124852213
096332079
1324852079
Stop Event
saturated
node-limit
iter-limit
Counts
110 → 206
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
lambda1
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(cos.f64 phi2)
phi2
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
lambda2
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
(cos.f64 phi1)
phi1
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx lambda1 #s(hole binary64 lambda1))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg lambda2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) lambda1)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (- lambda1 lambda2)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))) lambda1)) 1)))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin lambda1)))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx lambda2 #s(hole binary64 lambda2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos lambda1) (cos phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (cos phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos lambda1)))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (cos phi1) #s(hole binary64 1))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 phi1))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (cos (- lambda1 lambda2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2)))))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2))))))))))
#s(approx (cos phi2) #s(hole binary64 (cos phi2)))
Outputs
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))))
lambda1
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (cos.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) (fabs.f64 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (fabs.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(sin.f64 (+.f64 (neg.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (fabs.f64 phi2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (neg.f64 phi2)))
(cos.f64 (neg.f64 (fabs.f64 phi2)))
(cos.f64 (fabs.f64 (fabs.f64 phi2)))
(cos.f64 (neg.f64 phi2))
(cos.f64 (fabs.f64 phi2))
(cos.f64 phi2)
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
phi2
(neg.f64 (sin.f64 (-.f64 lambda2 lambda1)))
(sin.f64 (-.f64 lambda1 lambda2))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 (*.f64 #s(literal 1 binary64) lambda2))) (*.f64 (cos.f64 lambda1) (sin.f64 (*.f64 #s(literal 1 binary64) lambda2))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (neg.f64 (neg.f64 (sin.f64 lambda2)))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(neg.f64 (-.f64 lambda2 lambda1))
(fma.f64 #s(literal -1 binary64) lambda2 lambda1)
(fma.f64 lambda2 #s(literal -1 binary64) lambda1)
(-.f64 lambda1 (*.f64 #s(literal 1 binary64) lambda2))
(-.f64 lambda1 (neg.f64 (neg.f64 lambda2)))
(-.f64 lambda1 lambda2)
(+.f64 (neg.f64 lambda2) lambda1)
(+.f64 lambda1 (neg.f64 lambda2))
lambda2
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(-.f64 (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1))))
(-.f64 (cos.f64 phi1) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)))
(sin.f64 (+.f64 (neg.f64 phi1) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (fabs.f64 phi1) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (neg.f64 phi1)))
(cos.f64 (neg.f64 (fabs.f64 phi1)))
(cos.f64 (fabs.f64 (fabs.f64 phi1)))
(cos.f64 (neg.f64 phi1))
(cos.f64 (fabs.f64 phi1))
(cos.f64 phi1)
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
phi1
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)))
(/.f64 (neg.f64 (+.f64 (cos.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))) (cos.f64 (-.f64 phi2 (-.f64 lambda1 lambda2))))) #s(literal -2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi2))) (cos.f64 (-.f64 (neg.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (fabs.f64 phi2))) (cos.f64 (-.f64 (neg.f64 (-.f64 lambda1 lambda2)) (fabs.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) phi2)) (cos.f64 (-.f64 (neg.f64 (-.f64 lambda1 lambda2)) phi2))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (-.f64 lambda2 lambda1)) (neg.f64 phi2))) (cos.f64 (-.f64 (fabs.f64 (-.f64 lambda2 lambda1)) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (-.f64 lambda2 lambda1)) (fabs.f64 phi2))) (cos.f64 (-.f64 (fabs.f64 (-.f64 lambda2 lambda1)) (fabs.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (-.f64 lambda2 lambda1)) phi2)) (cos.f64 (-.f64 (fabs.f64 (-.f64 lambda2 lambda1)) phi2))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2))) (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (fabs.f64 phi2))) (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (fabs.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 lambda1 lambda2) phi2)) (cos.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 phi2) (neg.f64 (-.f64 lambda1 lambda2)))) (cos.f64 (-.f64 (neg.f64 phi2) (neg.f64 (-.f64 lambda1 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 phi2) (fabs.f64 (-.f64 lambda2 lambda1)))) (cos.f64 (-.f64 (neg.f64 phi2) (fabs.f64 (-.f64 lambda2 lambda1))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 phi2) (-.f64 lambda1 lambda2))) (cos.f64 (-.f64 (neg.f64 phi2) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 phi2) (neg.f64 (-.f64 lambda1 lambda2)))) (cos.f64 (-.f64 (fabs.f64 phi2) (neg.f64 (-.f64 lambda1 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 phi2) (fabs.f64 (-.f64 lambda2 lambda1)))) (cos.f64 (-.f64 (fabs.f64 phi2) (fabs.f64 (-.f64 lambda2 lambda1))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 phi2) (-.f64 lambda1 lambda2))) (cos.f64 (-.f64 (fabs.f64 phi2) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 phi2 (neg.f64 (-.f64 lambda1 lambda2)))) (cos.f64 (-.f64 phi2 (neg.f64 (-.f64 lambda1 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 phi2 (fabs.f64 (-.f64 lambda2 lambda1)))) (cos.f64 (-.f64 phi2 (fabs.f64 (-.f64 lambda2 lambda1))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 phi2))) (sin.f64 (+.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (fabs.f64 phi2))) (sin.f64 (+.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (fabs.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) phi2)) (sin.f64 (+.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) phi2))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 (-.f64 lambda1 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (fabs.f64 (-.f64 lambda2 lambda1)))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (fabs.f64 (-.f64 lambda2 lambda1))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))) (cos.f64 (-.f64 phi2 (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(+.f64 (/.f64 (cos.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))) #s(literal 2 binary64)) (/.f64 (cos.f64 (-.f64 phi2 (-.f64 lambda1 lambda2))) #s(literal 2 binary64)))
(sin.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (-.f64 lambda2 lambda1)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (cos.f64 lambda1) (cos.f64 (*.f64 #s(literal 1 binary64) lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 (*.f64 #s(literal 1 binary64) lambda2))))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (neg.f64 (neg.f64 (sin.f64 lambda2)))))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(cos.f64 (neg.f64 (neg.f64 (-.f64 lambda1 lambda2))))
(cos.f64 (neg.f64 (fabs.f64 (-.f64 lambda2 lambda1))))
(cos.f64 (fabs.f64 (fabs.f64 (-.f64 lambda2 lambda1))))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (fabs.f64 (-.f64 lambda2 lambda1)))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 (*.f64 #s(literal 1 binary64) lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 (*.f64 #s(literal 1 binary64) lambda2))))
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (neg.f64 (sin.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))) lambda1))
#s(approx lambda1 lambda1)
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (neg.f64 (sin.f64 lambda2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/6 binary64))) lambda1 (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 lambda2))) lambda1 (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 lambda2))) lambda1 (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda1 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda1 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (*.f64 #s(literal -1/2 binary64) (cos.f64 lambda2))) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 lambda2 lambda1)) lambda1))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (neg.f64 lambda1) (-.f64 (neg.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))) (cos.f64 phi2)) (fma.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1)) #s(literal 1 binary64))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))) (cos.f64 phi2)) (fma.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))) (cos.f64 phi2)))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))))
#s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (sin.f64 lambda1) (cos.f64 phi2) (neg.f64 (*.f64 (*.f64 (cos.f64 lambda1) lambda2) (cos.f64 phi2)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 lambda2 (cos.f64 phi2)) (sin.f64 lambda1)) (neg.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (sin.f64 lambda1))) lambda2)) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 lambda2 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (sin.f64 lambda1) (neg.f64 (cos.f64 lambda1))) (sin.f64 lambda1)))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 lambda2 (fma.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal 1/6 binary64) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) (neg.f64 (cos.f64 lambda1))) lambda2 (sin.f64 lambda1)))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx lambda2 lambda2)
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda1) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 lambda2 (cos.f64 phi2)) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 phi2) (*.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))) lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 lambda2 (cos.f64 phi2)) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 phi2) (*.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))) lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda1))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda2 (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda2 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/6 binary64) (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64))) lambda2) (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1)))
#s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))) lambda1))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda2) (-.f64 #s(literal 1 binary64) (/.f64 lambda1 lambda2))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) #s(literal 1 binary64)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))) #s(literal 1 binary64)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (*.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1))) #s(literal 1 binary64)))
#s(approx (cos phi1) #s(literal 1 binary64))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos phi1) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
#s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 phi1 phi1) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
#s(approx phi1 phi1)
#s(approx (cos phi1) (cos.f64 phi1))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 #s(literal -1/2 binary64) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64)) (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 #s(literal 1/24 binary64) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (*.f64 #s(literal -1/2 binary64) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))
#s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))
#s(approx phi2 phi2)
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda2 lambda1))) #s(literal 1/24 binary64) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda2 lambda1))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda2 lambda1))) #s(literal -1/720 binary64) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda2 lambda1))) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda2 lambda1))) #s(literal 1/24 binary64) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda2 lambda1))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda2 lambda1))) #s(literal -1/720 binary64) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda2 lambda1))))
#s(approx (cos phi2) (cos.f64 phi2))

eval30.0ms (0.2%)

Memory
-4.3MiB live, 54.2MiB allocated; 7ms collecting garbage
Compiler

Compiled 2 642 to 1 217 computations (53.9% saved)

prune17.0ms (0.1%)

Memory
19.5MiB live, 19.5MiB allocated; 0ms collecting garbage
Pruning

18 alts after pruning (18 fresh and 0 done)

PrunedKeptTotal
New17118189
Fresh000
Picked101
Done000
Total17218190
Accuracy
99.0%
Counts
190 → 18
Alt Table
Click to see full alt table
StatusAccuracyProgram
98.8%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
98.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
98.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
98.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
81.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
85.1%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
83.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
83.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) #s(literal 1 binary64)))))
98.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
81.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
85.8%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 lambda2 lambda1)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 lambda2 lambda1)) lambda1)))))))
98.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
98.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
68.6%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
80.7%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
82.4%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
36.6%
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))))
98.7%
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
Compiler

Compiled 858 to 752 computations (12.4% saved)

series101.0ms (0.8%)

Memory
-35.7MiB live, 55.8MiB allocated; 8ms collecting garbage
Counts
48 → 174
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
lambda1
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
(cos.f64 lambda2)
lambda2
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(cos.f64 lambda1)
(sin.f64 lambda2)
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
(cos.f64 phi1)
phi1
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 phi2 phi2)
#s(literal -1/2 binary64)
#s(literal 1 binary64)
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 phi1 phi1)
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))
(fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))
(neg.f64 (sin.f64 lambda2))
Outputs
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx lambda1 #s(hole binary64 lambda1))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* lambda1 (- (* -1/6 (* lambda1 (cos lambda2))) (* -1/2 (sin lambda2)))))) (sin lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1/6 (* (pow lambda1 2) (cos lambda2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* 1/120 (* (pow lambda1 2) (cos lambda2)))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (cos lambda2))) (* 1/120 (cos lambda2))))))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* -1/6 (pow lambda1 2))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* 1/120 (pow lambda1 2)) 1/6))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/120 (* -1/5040 (pow lambda1 2)))) 1/6))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (sin lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (sin lambda2))) (* 1/24 (sin lambda2)))))))))
#s(approx (cos lambda1) #s(hole binary64 1))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* -1/2 (pow lambda1 2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* 1/24 (pow lambda1 2)) 1/2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/24 (* -1/720 (pow lambda1 2)))) 1/2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg lambda2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda2) (sin lambda1))))
#s(approx (sin lambda1) #s(hole binary64 (sin lambda1)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (cos lambda1) #s(hole binary64 (cos lambda1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (- lambda1 lambda2)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) lambda1)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1 (/ (sin lambda2) lambda1))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))) lambda1)) 1)))))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))) lambda1)) 1)))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* -1 (* lambda1 (+ (* -1 (cos lambda2)) (/ (sin lambda2) lambda1))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))) (cos lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1/2 (* (pow lambda2 2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* 1/24 (* (pow lambda2 2) (sin lambda1))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (sin lambda1))) (* 1/24 (sin lambda1)))))))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* -1/2 (pow lambda2 2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* 1/24 (pow lambda2 2)) 1/2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/24 (* -1/720 (pow lambda2 2)))) 1/2)))))
#s(approx lambda2 #s(hole binary64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (cos lambda1))) (* 1/120 (cos lambda1))))))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* -1/6 (pow lambda2 2))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* 1/120 (pow lambda2 2)) 1/6))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/120 (* -1/5040 (pow lambda2 2)))) 1/6))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos lambda1) (cos phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (cos phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (cos phi2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* -1/2 (* (pow lambda2 2) (cos phi2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* 1/24 (* (pow lambda2 2) (cos phi2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (cos phi2))) (* 1/24 (cos phi2))))))))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* -1/2 (* lambda1 lambda2)) 1)))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* lambda2 (+ (* -1/2 lambda1) (* 1/6 lambda2))) 1)))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* 1/6 (pow lambda2 2)) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* -1/120 (pow lambda2 2)))) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* (pow lambda2 2) (- (* 1/5040 (pow lambda2 2)) 1/120)))) 1))))
#s(approx (cos lambda2) #s(hole binary64 (cos lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (* (cos lambda2) (cos phi2)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 phi1))
#s(approx (* phi1 phi1) #s(hole binary64 (pow phi1 2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (* (cos lambda2) (cos phi2)))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos lambda2) (cos phi2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* -1/2 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* (pow phi1 2) (- (/ 1 (pow phi1 2)) 1/2))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* -1/2 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* (cos lambda2) (sin lambda1))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* 1/24 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (cos (- lambda1 lambda2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2)))))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2))))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (* phi2 phi2) #s(hole binary64 (pow phi2 2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (cos phi1))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* -1/2 (* (pow phi2 2) (cos lambda2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* 1/24 (* (pow phi2 2) (cos lambda2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos lambda2))) (* 1/24 (cos lambda2))))))))))
#s(approx (cos phi2) #s(hole binary64 (cos phi2)))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) #s(hole binary64 (* -1/2 (pow phi2 2))))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) #s(hole binary64 (* (pow phi2 2) (- (/ 1 (pow phi2 2)) 1/2))))
Calls

12 calls:

TimeVariablePointExpression
37.0ms
lambda1
@inf
((+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (cos phi2) phi2 (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) phi1 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (- lambda1 lambda2) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (+ (* (* phi2 phi2) -1/2) 1) (* phi2 phi2) -1/2 1 (sin (- lambda1 lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (* (cos phi2) (cos (- lambda1 lambda2))) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (sin (- lambda1 lambda2)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)))
6.0ms
lambda1
@-inf
((+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (cos phi2) phi2 (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) phi1 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (- lambda1 lambda2) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (+ (* (* phi2 phi2) -1/2) 1) (* phi2 phi2) -1/2 1 (sin (- lambda1 lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (* (cos phi2) (cos (- lambda1 lambda2))) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (sin (- lambda1 lambda2)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)))
5.0ms
phi2
@inf
((+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (cos phi2) phi2 (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) phi1 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (- lambda1 lambda2) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (+ (* (* phi2 phi2) -1/2) 1) (* phi2 phi2) -1/2 1 (sin (- lambda1 lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (* (cos phi2) (cos (- lambda1 lambda2))) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (sin (- lambda1 lambda2)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)))
4.0ms
phi2
@-inf
((+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (cos phi2) phi2 (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) phi1 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (- lambda1 lambda2) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (+ (* (* phi2 phi2) -1/2) 1) (* phi2 phi2) -1/2 1 (sin (- lambda1 lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (* (cos phi2) (cos (- lambda1 lambda2))) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (sin (- lambda1 lambda2)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)))
4.0ms
lambda2
@-inf
((+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (cos phi2) phi2 (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) phi1 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (- lambda1 lambda2) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (+ (* (* phi2 phi2) -1/2) 1) (* phi2 phi2) -1/2 1 (sin (- lambda1 lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (* (cos phi2) (cos (- lambda1 lambda2))) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) (+ (* (* phi1 phi1) -1/2) 1) (* phi1 phi1) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (sin (- lambda1 lambda2)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)))

rewrite297.0ms (2.3%)

Memory
6.1MiB live, 234.9MiB allocated; 208ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07764823
08474381
156474381
081924134
1242414134
Stop Event
saturated
node-limit
iter-limit
Counts
222 → 403
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
lambda1
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
(cos.f64 lambda2)
lambda2
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(cos.f64 lambda1)
(sin.f64 lambda2)
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
(cos.f64 phi1)
phi1
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 phi2 phi2)
#s(literal -1/2 binary64)
#s(literal 1 binary64)
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 phi1 phi1)
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))
(fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))
(neg.f64 (sin.f64 lambda2))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx lambda1 #s(hole binary64 lambda1))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* lambda1 (- (* -1/6 (* lambda1 (cos lambda2))) (* -1/2 (sin lambda2)))))) (sin lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1/6 (* (pow lambda1 2) (cos lambda2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* 1/120 (* (pow lambda1 2) (cos lambda2)))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (cos lambda2))) (* 1/120 (cos lambda2))))))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* -1/6 (pow lambda1 2))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* 1/120 (pow lambda1 2)) 1/6))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/120 (* -1/5040 (pow lambda1 2)))) 1/6))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (sin lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (sin lambda2))) (* 1/24 (sin lambda2)))))))))
#s(approx (cos lambda1) #s(hole binary64 1))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* -1/2 (pow lambda1 2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* 1/24 (pow lambda1 2)) 1/2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/24 (* -1/720 (pow lambda1 2)))) 1/2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg lambda2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda2) (sin lambda1))))
#s(approx (sin lambda1) #s(hole binary64 (sin lambda1)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (cos lambda1) #s(hole binary64 (cos lambda1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (- lambda1 lambda2)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) lambda1)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1 (/ (sin lambda2) lambda1))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))) lambda1)) 1)))))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))) lambda1)) 1)))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* -1 (* lambda1 (+ (* -1 (cos lambda2)) (/ (sin lambda2) lambda1))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))) (cos lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1/2 (* (pow lambda2 2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* 1/24 (* (pow lambda2 2) (sin lambda1))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (sin lambda1))) (* 1/24 (sin lambda1)))))))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* -1/2 (pow lambda2 2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* 1/24 (pow lambda2 2)) 1/2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/24 (* -1/720 (pow lambda2 2)))) 1/2)))))
#s(approx lambda2 #s(hole binary64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (cos lambda1))) (* 1/120 (cos lambda1))))))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* -1/6 (pow lambda2 2))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* 1/120 (pow lambda2 2)) 1/6))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/120 (* -1/5040 (pow lambda2 2)))) 1/6))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos lambda1) (cos phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos lambda1) (cos phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (cos phi2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* -1/2 (* (pow lambda2 2) (cos phi2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* 1/24 (* (pow lambda2 2) (cos phi2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (cos phi2))) (* 1/24 (cos phi2))))))))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* -1/2 (* lambda1 lambda2)) 1)))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* lambda2 (+ (* -1/2 lambda1) (* 1/6 lambda2))) 1)))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* 1/6 (pow lambda2 2)) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* -1/120 (pow lambda2 2)))) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* (pow lambda2 2) (- (* 1/5040 (pow lambda2 2)) 1/120)))) 1))))
#s(approx (cos lambda2) #s(hole binary64 (cos lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (* (cos lambda2) (cos phi2)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 phi1))
#s(approx (* phi1 phi1) #s(hole binary64 (pow phi1 2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (* (cos lambda2) (cos phi2)))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos lambda2) (cos phi2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* -1/2 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) #s(hole binary64 (* (pow phi1 2) (- (/ 1 (pow phi1 2)) 1/2))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* -1/2 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* (cos lambda2) (sin lambda1))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* 1/24 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (cos (- lambda1 lambda2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2)))))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2))))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (* phi2 phi2) #s(hole binary64 (pow phi2 2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (cos phi1))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* -1/2 (* (pow phi2 2) (cos lambda2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* 1/24 (* (pow phi2 2) (cos lambda2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos lambda2))) (* 1/24 (cos lambda2))))))))))
#s(approx (cos phi2) #s(hole binary64 (cos phi2)))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) #s(hole binary64 (* -1/2 (pow phi2 2))))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) #s(hole binary64 (* (pow phi2 2) (- (/ 1 (pow phi2 2)) 1/2))))
Outputs
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
lambda1
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (cos.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) (fabs.f64 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (fabs.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 phi2))
(cos.f64 (fabs.f64 phi2))
(cos.f64 phi2)
phi2
(neg.f64 (-.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(sin.f64 (-.f64 lambda1 lambda2))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1)) (cos.f64 (+.f64 (+.f64 (neg.f64 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1)) (cos.f64 (+.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda1))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 lambda1 (+.f64 (neg.f64 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 lambda1 (+.f64 (neg.f64 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 lambda1 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 lambda1 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 lambda1 (neg.f64 (neg.f64 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (fabs.f64 (neg.f64 lambda2)))) (sin.f64 (+.f64 lambda1 (fabs.f64 (neg.f64 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (fabs.f64 lambda2))) (sin.f64 (+.f64 lambda1 (fabs.f64 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (neg.f64 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 lambda1 lambda2))) #s(literal 2 binary64))
(sin.f64 lambda1)
(sin.f64 (+.f64 (neg.f64 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 lambda2)))
(cos.f64 (fabs.f64 (neg.f64 lambda2)))
(cos.f64 (fabs.f64 lambda2))
(cos.f64 (neg.f64 lambda2))
(cos.f64 lambda2)
lambda2
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(/.f64 (-.f64 (cos.f64 (-.f64 lambda2 (+.f64 lambda1 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 lambda2 (+.f64 lambda1 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 lambda1 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda2)) (cos.f64 (+.f64 (+.f64 lambda1 (/.f64 (PI.f64) #s(literal 2 binary64))) lambda2))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda2 (neg.f64 lambda1))) (sin.f64 (+.f64 (neg.f64 lambda1) lambda2))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda2 (fabs.f64 lambda1))) (sin.f64 (+.f64 lambda2 (fabs.f64 lambda1)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))) #s(literal 2 binary64))
(sin.f64 (+.f64 lambda1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 lambda1))
(cos.f64 (fabs.f64 lambda1))
(cos.f64 lambda1)
(sin.f64 lambda2)
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(-.f64 (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(-.f64 (cos.f64 phi1) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(sin.f64 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 phi1))
(cos.f64 (fabs.f64 phi1))
(cos.f64 phi1)
phi1
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi2))) (cos.f64 (-.f64 (neg.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) (fabs.f64 phi2))) (cos.f64 (-.f64 (neg.f64 (-.f64 lambda1 lambda2)) (fabs.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (-.f64 lambda1 lambda2)) phi2)) (cos.f64 (-.f64 (neg.f64 (-.f64 lambda1 lambda2)) phi2))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi2))) (cos.f64 (-.f64 (fabs.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (-.f64 lambda1 lambda2)) (fabs.f64 phi2))) (cos.f64 (-.f64 (fabs.f64 (-.f64 lambda1 lambda2)) (fabs.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 (-.f64 lambda1 lambda2)) phi2)) (cos.f64 (-.f64 (fabs.f64 (-.f64 lambda1 lambda2)) phi2))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2))) (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (fabs.f64 phi2))) (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (fabs.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 lambda1 lambda2) phi2)) (cos.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 phi2) (neg.f64 (-.f64 lambda1 lambda2)))) (cos.f64 (-.f64 (neg.f64 phi2) (neg.f64 (-.f64 lambda1 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 phi2) (fabs.f64 (-.f64 lambda1 lambda2)))) (cos.f64 (-.f64 (neg.f64 phi2) (fabs.f64 (-.f64 lambda1 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 phi2) (-.f64 lambda1 lambda2))) (cos.f64 (-.f64 (neg.f64 phi2) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 phi2) (neg.f64 (-.f64 lambda1 lambda2)))) (cos.f64 (-.f64 (fabs.f64 phi2) (neg.f64 (-.f64 lambda1 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 phi2) (fabs.f64 (-.f64 lambda1 lambda2)))) (cos.f64 (-.f64 (fabs.f64 phi2) (fabs.f64 (-.f64 lambda1 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (fabs.f64 phi2) (-.f64 lambda1 lambda2))) (cos.f64 (-.f64 (fabs.f64 phi2) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 phi2 (neg.f64 (-.f64 lambda1 lambda2)))) (cos.f64 (-.f64 phi2 (neg.f64 (-.f64 lambda1 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 phi2 (fabs.f64 (-.f64 lambda1 lambda2)))) (cos.f64 (-.f64 phi2 (fabs.f64 (-.f64 lambda1 lambda2))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 phi2))) (sin.f64 (+.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (fabs.f64 phi2))) (sin.f64 (+.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (fabs.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) phi2)) (sin.f64 (+.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) phi2))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 (-.f64 lambda1 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (fabs.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (fabs.f64 (-.f64 lambda1 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))) (cos.f64 (-.f64 phi2 (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (fabs.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(neg.f64 (-.f64 lambda2 lambda1))
(fma.f64 #s(literal -1 binary64) lambda2 lambda1)
(fma.f64 lambda2 #s(literal -1 binary64) lambda1)
(-.f64 lambda1 (*.f64 #s(literal 1 binary64) lambda2))
(-.f64 lambda1 (neg.f64 (neg.f64 lambda2)))
(-.f64 lambda1 lambda2)
(+.f64 (neg.f64 lambda2) lambda1)
(+.f64 lambda1 (neg.f64 lambda2))
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2) #s(literal 1 binary64))
(fma.f64 phi2 (*.f64 phi2 #s(literal -1/2 binary64)) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64))))
(+.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))
(*.f64 (neg.f64 phi2) (neg.f64 phi2))
(*.f64 (fabs.f64 phi2) (fabs.f64 phi2))
(*.f64 phi2 phi2)
(pow.f64 (neg.f64 phi2) #s(literal 2 binary64))
(pow.f64 (fabs.f64 phi2) #s(literal 2 binary64))
(pow.f64 phi2 #s(literal 2 binary64))
(fabs.f64 (*.f64 phi2 phi2))
#s(literal -1/2 binary64)
#s(literal 1 binary64)
(neg.f64 (-.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))
(sin.f64 (-.f64 lambda1 lambda2))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))
(fma.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(-.f64 (cos.f64 phi1) (*.f64 (neg.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))
(-.f64 (cos.f64 phi1) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)))
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (-.f64 (cos.f64 (-.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (-.f64 lambda1 lambda2) (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (cos.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) (fabs.f64 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (fabs.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(-.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (neg.f64 (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(-.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 phi1 phi1) #s(literal 1 binary64))
(fma.f64 phi1 (*.f64 phi1 #s(literal -1/2 binary64)) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1)))
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64))))
(+.f64 (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)))
(*.f64 (neg.f64 phi1) (neg.f64 phi1))
(*.f64 (fabs.f64 phi1) (fabs.f64 phi1))
(*.f64 phi1 phi1)
(pow.f64 (neg.f64 phi1) #s(literal 2 binary64))
(pow.f64 (fabs.f64 phi1) #s(literal 2 binary64))
(pow.f64 phi1 #s(literal 2 binary64))
(fabs.f64 (*.f64 phi1 phi1))
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1))))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))
(fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (cos.f64 phi1))
(-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (neg.f64 (cos.f64 phi1)))
(-.f64 (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 phi2)) (cos.f64 lambda2)))
(-.f64 (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 phi2)))
(-.f64 (cos.f64 phi1) (neg.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 (atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
(neg.f64 (-.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 #s(literal -1 binary64) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) lambda1))
(fma.f64 (sin.f64 lambda2) #s(literal -1 binary64) (*.f64 (cos.f64 lambda2) lambda1))
(fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))
(fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2)))
(-.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (neg.f64 lambda1) (cos.f64 lambda2)))
(-.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 (*.f64 (cos.f64 lambda2) lambda1)))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (neg.f64 (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))
(+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2)))
(*.f64 #s(literal -1 binary64) (sin.f64 lambda2))
(*.f64 (sin.f64 lambda2) #s(literal -1 binary64))
(neg.f64 (sin.f64 lambda2))
(sin.f64 (+.f64 lambda2 (PI.f64)))
(sin.f64 (neg.f64 lambda2))
(cos.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1))
#s(approx lambda1 lambda1)
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 phi2)) (sin.f64 lambda2) (*.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 lambda2) lambda1) #s(literal 1/2 binary64) (cos.f64 lambda2)) lambda1) (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/6 binary64) (*.f64 #s(literal 1/2 binary64) (sin.f64 lambda2))) lambda1 (cos.f64 lambda2)) lambda1) (sin.f64 lambda2)))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (fma.f64 (*.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64)) (cos.f64 lambda2) (cos.f64 lambda2)) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1)) (cos.f64 lambda2) (*.f64 #s(literal -1/6 binary64) (cos.f64 lambda2))) (*.f64 lambda1 lambda1) (cos.f64 lambda2)) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 lambda1 lambda1)) (cos.f64 lambda2) (*.f64 #s(literal 1/120 binary64) (cos.f64 lambda2))) (*.f64 lambda1 lambda1) (*.f64 #s(literal -1/6 binary64) (cos.f64 lambda2))) (*.f64 lambda1 lambda1) (cos.f64 lambda2)) lambda1))
#s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1))
#s(approx (sin lambda1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1) #s(literal -1/6 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (sin lambda1) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 lambda1 lambda1) #s(literal 1/120 binary64)) (*.f64 lambda1 lambda1) #s(literal -1/6 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (fma.f64 (*.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64)) (sin.f64 lambda2) (sin.f64 lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) (fma.f64 (fma.f64 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)) #s(literal 1/24 binary64) (*.f64 (sin.f64 lambda2) #s(literal -1/2 binary64))) (*.f64 lambda1 lambda1) (sin.f64 lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) (fma.f64 (fma.f64 (sin.f64 lambda2) #s(literal -1/2 binary64) (*.f64 (fma.f64 #s(literal 1/24 binary64) (sin.f64 lambda2) (*.f64 (*.f64 #s(literal -1/720 binary64) (*.f64 lambda1 lambda1)) (sin.f64 lambda2))) (*.f64 lambda1 lambda1))) (*.f64 lambda1 lambda1) (sin.f64 lambda2)))
#s(approx (cos lambda1) #s(literal 1 binary64))
#s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos lambda1) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 lambda1 lambda1) #s(literal -1/2 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)))
#s(approx (cos lambda1) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 lambda1 lambda1) #s(literal 1/24 binary64)) (*.f64 lambda1 lambda1) #s(literal -1/2 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 lambda2))) lambda1 (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 lambda2))) lambda1 (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda1 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda1 (-.f64 (*.f64 (fma.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1) #s(literal 1/6 binary64) (*.f64 (cos.f64 lambda2) #s(literal -1/2 binary64))) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (neg.f64 (sin.f64 lambda2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/6 binary64))) lambda1 (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))
#s(approx (sin lambda1) (sin.f64 lambda1))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
#s(approx (cos lambda1) (cos.f64 lambda1))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) (*.f64 (+.f64 (/.f64 (neg.f64 lambda2) lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (neg.f64 lambda1) (-.f64 (neg.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1)) #s(literal 1 binary64))))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)))
#s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (neg.f64 lambda1) (-.f64 (neg.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))) (cos.f64 phi2)) (fma.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1)) #s(literal 1 binary64))))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))) (cos.f64 phi2)) (fma.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))) (cos.f64 phi2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (neg.f64 lambda1) (+.f64 (neg.f64 (cos.f64 lambda2)) (/.f64 (sin.f64 lambda2) lambda1))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (fma.f64 (sin.f64 lambda1) (cos.f64 phi2) (neg.f64 (*.f64 (*.f64 (cos.f64 lambda1) lambda2) (cos.f64 phi2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 lambda2 (cos.f64 phi2)) (sin.f64 lambda1)) (neg.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (fma.f64 (fma.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (sin.f64 lambda1))) lambda2)) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 lambda2 (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/2 binary64)) (cos.f64 lambda1)) (sin.f64 lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal 1/6 binary64) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) lambda2) (cos.f64 lambda1)) lambda2 (sin.f64 lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/2 binary64)) (sin.f64 lambda1) (sin.f64 lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1)) #s(literal 1/24 binary64) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) (*.f64 lambda2 lambda2) (sin.f64 lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) (fma.f64 (fma.f64 (sin.f64 lambda1) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1)) #s(literal -1/720 binary64) (*.f64 (sin.f64 lambda1) #s(literal 1/24 binary64))) (*.f64 lambda2 lambda2))) (*.f64 lambda2 lambda2) (sin.f64 lambda1)))
#s(approx (cos lambda2) (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos lambda2) (fma.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)))
#s(approx (cos lambda2) (fma.f64 (fma.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 lambda2 lambda2) #s(literal -1/2 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)))
#s(approx lambda2 lambda2)
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (cos.f64 lambda1) lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/6 binary64)) (cos.f64 lambda1) (cos.f64 lambda1)) lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/120 binary64)) (cos.f64 lambda1) (*.f64 #s(literal -1/6 binary64) (cos.f64 lambda1))) (*.f64 lambda2 lambda2) (cos.f64 lambda1)) lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/5040 binary64)) (cos.f64 lambda1) (*.f64 #s(literal 1/120 binary64) (cos.f64 lambda1))) (*.f64 lambda2 lambda2) (*.f64 #s(literal -1/6 binary64) (cos.f64 lambda1))) (*.f64 lambda2 lambda2) (cos.f64 lambda1)) lambda2))
#s(approx (sin lambda2) (*.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda2))
#s(approx (sin lambda2) (*.f64 (fma.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)) lambda2))
#s(approx (sin lambda2) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 lambda2 lambda2) #s(literal -1/6 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)) lambda2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda1) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 lambda2 (cos.f64 phi2)) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 phi2) (*.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))) lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 lambda2 (cos.f64 phi2)) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 phi2) (*.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))) lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda2 (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda2 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/6 binary64) (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64))) lambda2) (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1)))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 lambda2 (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/2 binary64)) (cos.f64 lambda1)) (sin.f64 lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal 1/6 binary64) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) lambda2) (cos.f64 lambda1)) lambda2 (sin.f64 lambda1)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 phi1)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2))) (*.f64 lambda2 lambda2) (cos.f64 phi2)) (cos.f64 phi1)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (cos.f64 phi2))) (*.f64 lambda2 lambda2) (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2))) (*.f64 lambda2 lambda2) (cos.f64 phi2)) (cos.f64 phi1)))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1))
#s(approx (neg (sin lambda2)) (*.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal 1/6 binary64) #s(literal -1 binary64)) lambda2))
#s(approx (neg (sin lambda2)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 lambda2 lambda2) #s(literal 1/6 binary64)) (*.f64 lambda2 lambda2) #s(literal -1 binary64)) lambda2))
#s(approx (neg (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 lambda2 lambda2) #s(literal -1/120 binary64)) (*.f64 lambda2 lambda2) #s(literal 1/6 binary64)) (*.f64 lambda2 lambda2) #s(literal -1 binary64)) lambda2))
#s(approx (cos lambda2) (cos.f64 lambda2))
#s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda2) (+.f64 (/.f64 (neg.f64 lambda1) lambda2) #s(literal 1 binary64))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) #s(literal 1 binary64)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1))) #s(literal 1 binary64)))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
#s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
#s(approx phi1 phi1)
#s(approx (* phi1 phi1) (*.f64 phi1 phi1))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1))))
#s(approx (cos phi1) (cos.f64 phi1))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64)))
#s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (-.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (-.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
#s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))
#s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))
#s(approx phi2 phi2)
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* phi2 phi2) (*.f64 phi2 phi2))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 lambda2)) #s(literal -1/2 binary64) (cos.f64 phi1)) (cos.f64 lambda2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 lambda2)) #s(literal 1/24 binary64) (*.f64 (cos.f64 lambda2) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 phi1)) (cos.f64 lambda2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 lambda2)) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (cos.f64 lambda2))) (*.f64 phi2 phi2) (*.f64 (cos.f64 lambda2) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 phi1)) (cos.f64 lambda2)))
#s(approx (cos phi2) (cos.f64 phi2))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2)))

eval161.0ms (1.2%)

Memory
-25.7MiB live, 156.6MiB allocated; 38ms collecting garbage
Compiler

Compiled 8 265 to 2 983 computations (63.9% saved)

prune113.0ms (0.9%)

Memory
-11.1MiB live, 87.7MiB allocated; 22ms collecting garbage
Pruning

40 alts after pruning (40 fresh and 0 done)

PrunedKeptTotal
New57736613
Fresh9413
Picked505
Done000
Total59140631
Accuracy
99.7%
Counts
631 → 40
Alt Table
Click to see full alt table
StatusAccuracyProgram
82.4%
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
75.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64)))))
99.6%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
81.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
98.8%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
98.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda1 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2)))))))
81.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda1) (cos.f64 phi2) (cos.f64 phi1)))))
81.8%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
98.8%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
98.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
85.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
56.8%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
83.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
82.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
80.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
81.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
85.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
87.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
98.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
98.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
98.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
98.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) #s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))))
82.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
81.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
68.6%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
78.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
98.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
70.2%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
68.4%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
82.4%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
72.6%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
82.1%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
82.2%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
70.2%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
69.3%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
75.5%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
82.2%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
60.0%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
76.0%
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
98.7%
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
Compiler

Compiled 2 218 to 1 932 computations (12.9% saved)

series64.0ms (0.5%)

Memory
36.1MiB live, 125.2MiB allocated; 7ms collecting garbage
Counts
56 → 253
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
lambda1
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
(cos.f64 lambda2)
lambda2
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(cos.f64 lambda1)
(sin.f64 lambda2)
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
(cos.f64 phi1)
phi1
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 phi2 phi2)
#s(literal -1/2 binary64)
#s(literal 1 binary64)
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))
(fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64))
(*.f64 phi1 phi1)
#s(literal 1/24 binary64)
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2)))
(+.f64 (cos.f64 phi1) (cos.f64 phi2))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64))))
(*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))
(neg.f64 (sin.f64 lambda2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
Outputs
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))
#s(approx lambda1 #s(hole binary64 lambda1))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* lambda1 (- (* -1/6 (* lambda1 (cos lambda2))) (* -1/2 (sin lambda2)))))) (sin lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1/6 (* (pow lambda1 2) (cos lambda2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* 1/120 (* (pow lambda1 2) (cos lambda2)))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (cos lambda2))) (* 1/120 (cos lambda2))))))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* -1/6 (pow lambda1 2))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* 1/120 (pow lambda1 2)) 1/6))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/120 (* -1/5040 (pow lambda1 2)))) 1/6))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (sin lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (sin lambda2))) (* 1/24 (sin lambda2)))))))))
#s(approx (cos lambda1) #s(hole binary64 1))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* -1/2 (pow lambda1 2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* 1/24 (pow lambda1 2)) 1/2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/24 (* -1/720 (pow lambda1 2)))) 1/2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (* (cos lambda2) (cos phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (* (cos phi2) (sin lambda2))) (* (cos lambda2) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (cos phi2)))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (cos phi2))) (* -1/6 (* lambda1 (* (cos phi2) (sin lambda2)))))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos lambda2) (cos phi2))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (sin lambda2))) (* (cos lambda2) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (cos phi2)))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (cos phi2))) (* -1/6 (* lambda1 (* (cos phi2) (sin lambda2)))))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (cos lambda2)))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (sin lambda2)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (+ (sin lambda2) (* -1/2 (* lambda1 (cos lambda2))))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (+ (sin lambda2) (* lambda1 (+ (* -1/2 (cos lambda2)) (* -1/6 (* lambda1 (sin lambda2))))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (sin lambda2))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* -1/6 (* (pow lambda1 2) (sin lambda2)))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* 1/120 (* (pow lambda1 2) (sin lambda2)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (sin lambda2))) (* 1/120 (sin lambda2))))))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg lambda2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (neg lambda2))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (cos (neg lambda2)))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2))))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2))))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2))))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda2) (sin lambda1))))
#s(approx (sin lambda1) #s(hole binary64 (sin lambda1)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (cos lambda1) #s(hole binary64 (cos lambda1)))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* (sin lambda1) (sin lambda2))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) lambda1)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (- lambda1 lambda2)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1 (/ (sin lambda2) lambda1))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) lambda1)))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (cos (- lambda1 lambda2)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) lambda1)) 1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))) lambda1)) 1)))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* -1 (* lambda1 (+ (* -1 (cos lambda2)) (/ (sin lambda2) lambda1))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))) lambda1)) 1)))))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (cos (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))) (cos lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1/2 (* (pow lambda2 2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* 1/24 (* (pow lambda2 2) (sin lambda1))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (sin lambda1))) (* 1/24 (sin lambda1)))))))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* -1/2 (pow lambda2 2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* 1/24 (pow lambda2 2)) 1/2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/24 (* -1/720 (pow lambda2 2)))) 1/2)))))
#s(approx lambda2 #s(hole binary64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (cos lambda1))) (* 1/120 (cos lambda1))))))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* -1/6 (pow lambda2 2))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* 1/120 (pow lambda2 2)) 1/6))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/120 (* -1/5040 (pow lambda2 2)))) 1/6))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (* (cos lambda1) (cos phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos lambda1) (cos phi2))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (+ (sin lambda1) (* -1/2 (* lambda2 (cos lambda1))))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (+ (sin lambda1) (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (sin lambda1))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* -1/6 (* (pow lambda2 2) (sin lambda1)))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* 1/120 (* (pow lambda2 2) (sin lambda1)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (sin lambda1))) (* 1/120 (sin lambda1))))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (cos phi2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* -1/2 (* (pow lambda2 2) (cos phi2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* 1/24 (* (pow lambda2 2) (cos phi2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (cos phi2))) (* 1/24 (cos phi2))))))))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* -1/2 (* lambda1 lambda2)) 1)))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* lambda2 (+ (* -1/2 lambda1) (* 1/6 lambda2))) 1)))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* 1/6 (pow lambda2 2)) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* -1/120 (pow lambda2 2)))) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* (pow lambda2 2) (- (* 1/5040 (pow lambda2 2)) 1/120)))) 1))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos lambda1) (cos phi2)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos lambda1) (cos phi1))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos lambda1) (+ (cos phi1) (* lambda2 (sin lambda1))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos lambda1) (+ (cos phi1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1))))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos lambda1) (+ (cos phi1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (cos (+ lambda1 (* -1 lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 phi1))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 -1/2))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 (- (* 1/24 (pow phi1 2)) 1/2)))
#s(approx (* phi1 phi1) #s(hole binary64 (pow phi1 2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (* (cos lambda2) (cos phi2)))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos lambda2) (cos phi2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (cos phi2))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi2) (* -1/2 (pow phi1 2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi2) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi2) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ 1 (cos (- lambda1 lambda2)))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* -1/2 (pow phi1 2))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) #s(hole binary64 (* 1/24 (pow phi1 4))))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) #s(hole binary64 (* (pow phi1 4) (- 1/24 (* 1/2 (/ 1 (pow phi1 2)))))))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) #s(hole binary64 (* (pow phi1 4) (- (+ 1/24 (/ 1 (pow phi1 4))) (* 1/2 (/ 1 (pow phi1 2)))))))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 (* 1/24 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 (* (pow phi1 2) (- 1/24 (* 1/2 (/ 1 (pow phi1 2)))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* -1/2 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* (cos lambda2) (sin lambda1))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* 1/24 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* -1/2 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/24 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/24 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (* phi2 phi2) #s(hole binary64 (pow phi2 2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2)))))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2))))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (cos phi1))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* -1/2 (* (pow phi2 2) (cos lambda2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* 1/24 (* (pow phi2 2) (cos lambda2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos lambda2))) (* 1/24 (cos lambda2))))))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (cos phi1))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi1) (* -1/2 (pow phi2 2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi1) (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi1) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2)))))))))))
#s(approx (cos phi2) #s(hole binary64 (cos phi2)))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) #s(hole binary64 (* -1/2 (pow phi2 2))))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) #s(hole binary64 (* (pow phi2 2) (- (/ 1 (pow phi2 2)) 1/2))))
Calls

12 calls:

TimeVariablePointExpression
8.0ms
lambda2
@-inf
((+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (cos phi2) phi2 (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (cos phi1) phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) (* (sin lambda1) (sin lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (+ (* (* phi2 phi2) -1/2) 1) (* phi2 phi2) -1/2 1 (sin (- lambda1 lambda2)) (- lambda1 lambda2) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1) 1/24 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+ (cos phi1) (cos phi2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (sin (- lambda1 lambda2)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (cos (- lambda1 lambda2)) (cos phi1)))
7.0ms
phi2
@0
((+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (cos phi2) phi2 (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (cos phi1) phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) (* (sin lambda1) (sin lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (+ (* (* phi2 phi2) -1/2) 1) (* phi2 phi2) -1/2 1 (sin (- lambda1 lambda2)) (- lambda1 lambda2) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1) 1/24 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+ (cos phi1) (cos phi2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (sin (- lambda1 lambda2)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (cos (- lambda1 lambda2)) (cos phi1)))
6.0ms
phi2
@inf
((+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (cos phi2) phi2 (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (cos phi1) phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) (* (sin lambda1) (sin lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (+ (* (* phi2 phi2) -1/2) 1) (* phi2 phi2) -1/2 1 (sin (- lambda1 lambda2)) (- lambda1 lambda2) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1) 1/24 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+ (cos phi1) (cos phi2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (sin (- lambda1 lambda2)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (cos (- lambda1 lambda2)) (cos phi1)))
5.0ms
phi2
@-inf
((+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (cos phi2) phi2 (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (cos phi1) phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) (* (sin lambda1) (sin lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (+ (* (* phi2 phi2) -1/2) 1) (* phi2 phi2) -1/2 1 (sin (- lambda1 lambda2)) (- lambda1 lambda2) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1) 1/24 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+ (cos phi1) (cos phi2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (sin (- lambda1 lambda2)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (cos (- lambda1 lambda2)) (cos phi1)))
5.0ms
phi1
@inf
((+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (cos phi2) phi2 (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (cos lambda1) (sin lambda2) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (cos phi1) phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) (* (sin lambda1) (sin lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (+ (* (* phi2 phi2) -1/2) 1) (* phi2 phi2) -1/2 1 (sin (- lambda1 lambda2)) (- lambda1 lambda2) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1) 1/24 (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+ (cos phi1) (cos phi2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (sin (- lambda1 lambda2)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (cos (- lambda1 lambda2)) (cos phi1)))

rewrite377.0ms (2.9%)

Memory
-26.3MiB live, 265.2MiB allocated; 72ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
010337580
011116564
178436564
085946187
1237796187
Stop Event
saturated
node-limit
iter-limit
Counts
309 → 495
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
lambda1
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
(cos.f64 lambda2)
lambda2
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(cos.f64 lambda1)
(sin.f64 lambda2)
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
(cos.f64 phi1)
phi1
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 phi2 phi2)
#s(literal -1/2 binary64)
#s(literal 1 binary64)
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))
(fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64))
(*.f64 phi1 phi1)
#s(literal 1/24 binary64)
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2)))
(+.f64 (cos.f64 phi1) (cos.f64 phi2))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64))))
(*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))
(neg.f64 (sin.f64 lambda2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))
#s(approx lambda1 #s(hole binary64 lambda1))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* lambda1 (- (* -1/6 (* lambda1 (cos lambda2))) (* -1/2 (sin lambda2)))))) (sin lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1/6 (* (pow lambda1 2) (cos lambda2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* 1/120 (* (pow lambda1 2) (cos lambda2)))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (cos lambda2))) (* 1/120 (cos lambda2))))))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* -1/6 (pow lambda1 2))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* 1/120 (pow lambda1 2)) 1/6))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/120 (* -1/5040 (pow lambda1 2)))) 1/6))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (sin lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (sin lambda2))) (* 1/24 (sin lambda2)))))))))
#s(approx (cos lambda1) #s(hole binary64 1))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* -1/2 (pow lambda1 2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* 1/24 (pow lambda1 2)) 1/2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/24 (* -1/720 (pow lambda1 2)))) 1/2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (* (cos lambda2) (cos phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (* (cos phi2) (sin lambda2))) (* (cos lambda2) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (cos phi2)))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (cos phi2))) (* -1/6 (* lambda1 (* (cos phi2) (sin lambda2)))))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos lambda2) (cos phi2))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (sin lambda2))) (* (cos lambda2) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (cos phi2)))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (cos phi2))) (* -1/6 (* lambda1 (* (cos phi2) (sin lambda2)))))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (cos lambda2)))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (sin lambda2)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (+ (sin lambda2) (* -1/2 (* lambda1 (cos lambda2))))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (+ (sin lambda2) (* lambda1 (+ (* -1/2 (cos lambda2)) (* -1/6 (* lambda1 (sin lambda2))))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (sin lambda2))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* -1/6 (* (pow lambda1 2) (sin lambda2)))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* 1/120 (* (pow lambda1 2) (sin lambda2)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (sin lambda2))) (* 1/120 (sin lambda2))))))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg lambda2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (neg lambda2))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (cos (neg lambda2)))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2))))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2))))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2))))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda2) (sin lambda1))))
#s(approx (sin lambda1) #s(hole binary64 (sin lambda1)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (cos lambda1) #s(hole binary64 (cos lambda1)))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* (sin lambda1) (sin lambda2))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) lambda1)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (- lambda1 lambda2)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1 (/ (sin lambda2) lambda1))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) lambda1)))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (cos (- lambda1 lambda2)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) lambda1)) 1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))) lambda1)) 1)))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* -1 (* lambda1 (+ (* -1 (cos lambda2)) (/ (sin lambda2) lambda1))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))) lambda1)) 1)))))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (cos (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))) (cos lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1/2 (* (pow lambda2 2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* 1/24 (* (pow lambda2 2) (sin lambda1))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (sin lambda1))) (* 1/24 (sin lambda1)))))))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* -1/2 (pow lambda2 2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* 1/24 (pow lambda2 2)) 1/2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/24 (* -1/720 (pow lambda2 2)))) 1/2)))))
#s(approx lambda2 #s(hole binary64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (cos lambda1))) (* 1/120 (cos lambda1))))))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* -1/6 (pow lambda2 2))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* 1/120 (pow lambda2 2)) 1/6))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/120 (* -1/5040 (pow lambda2 2)))) 1/6))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (* (cos lambda1) (cos phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos lambda1) (cos phi2))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (+ (sin lambda1) (* -1/2 (* lambda2 (cos lambda1))))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (+ (sin lambda1) (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (sin lambda1))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* -1/6 (* (pow lambda2 2) (sin lambda1)))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* 1/120 (* (pow lambda2 2) (sin lambda1)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (sin lambda1))) (* 1/120 (sin lambda1))))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (cos phi2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* -1/2 (* (pow lambda2 2) (cos phi2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* 1/24 (* (pow lambda2 2) (cos phi2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (cos phi2))) (* 1/24 (cos phi2))))))))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* -1/2 (* lambda1 lambda2)) 1)))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* lambda2 (+ (* -1/2 lambda1) (* 1/6 lambda2))) 1)))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* 1/6 (pow lambda2 2)) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* -1/120 (pow lambda2 2)))) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* (pow lambda2 2) (- (* 1/5040 (pow lambda2 2)) 1/120)))) 1))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos lambda1) (cos phi2)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos lambda1) (cos phi1))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos lambda1) (+ (cos phi1) (* lambda2 (sin lambda1))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos lambda1) (+ (cos phi1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1))))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos lambda1) (+ (cos phi1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (cos (+ lambda1 (* -1 lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 phi1))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 -1/2))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 (- (* 1/24 (pow phi1 2)) 1/2)))
#s(approx (* phi1 phi1) #s(hole binary64 (pow phi1 2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (* (cos lambda2) (cos phi2)))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos lambda2) (cos phi2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (cos phi2))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi2) (* -1/2 (pow phi1 2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi2) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi2) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ 1 (cos (- lambda1 lambda2)))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* -1/2 (pow phi1 2))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) #s(hole binary64 (* 1/24 (pow phi1 4))))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) #s(hole binary64 (* (pow phi1 4) (- 1/24 (* 1/2 (/ 1 (pow phi1 2)))))))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) #s(hole binary64 (* (pow phi1 4) (- (+ 1/24 (/ 1 (pow phi1 4))) (* 1/2 (/ 1 (pow phi1 2)))))))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 (* 1/24 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 (* (pow phi1 2) (- 1/24 (* 1/2 (/ 1 (pow phi1 2)))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* -1/2 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* (cos lambda2) (sin lambda1))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* 1/24 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* -1/2 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/24 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/24 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (* phi2 phi2) #s(hole binary64 (pow phi2 2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2)))))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2))))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (cos phi1))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* -1/2 (* (pow phi2 2) (cos lambda2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* 1/24 (* (pow phi2 2) (cos lambda2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos lambda2))) (* 1/24 (cos lambda2))))))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (cos phi1))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi1) (* -1/2 (pow phi2 2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi1) (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi1) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2)))))))))))
#s(approx (cos phi2) #s(hole binary64 (cos phi2)))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) #s(hole binary64 (* -1/2 (pow phi2 2))))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) #s(hole binary64 (* (pow phi2 2) (- (/ 1 (pow phi2 2)) 1/2))))
Outputs
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
lambda1
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) (fabs.f64 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (fabs.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 phi2))
(cos.f64 (fabs.f64 phi2))
(cos.f64 phi2)
phi2
(neg.f64 (-.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
(sin.f64 (-.f64 lambda1 lambda2))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 lambda1 (neg.f64 (neg.f64 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (fabs.f64 (neg.f64 lambda2)))) (sin.f64 (+.f64 lambda1 (fabs.f64 (neg.f64 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (fabs.f64 lambda2))) (sin.f64 (+.f64 lambda1 (fabs.f64 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (neg.f64 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 lambda1 lambda2))) #s(literal 2 binary64))
(sin.f64 lambda1)
(sin.f64 (+.f64 (neg.f64 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 lambda2)))
(cos.f64 (fabs.f64 (neg.f64 lambda2)))
(cos.f64 (fabs.f64 lambda2))
(cos.f64 (neg.f64 lambda2))
(cos.f64 lambda2)
lambda2
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda2 (neg.f64 lambda1))) (sin.f64 (+.f64 (neg.f64 lambda1) lambda2))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda2 (fabs.f64 lambda1))) (sin.f64 (+.f64 lambda2 (fabs.f64 lambda1)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))) #s(literal 2 binary64))
(sin.f64 (+.f64 lambda1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 lambda1))
(cos.f64 (fabs.f64 lambda1))
(cos.f64 lambda1)
(sin.f64 lambda2)
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(-.f64 (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(-.f64 (cos.f64 phi1) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(sin.f64 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 phi1))
(cos.f64 (fabs.f64 phi1))
(cos.f64 phi1)
phi1
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 phi2))) (sin.f64 (+.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (fabs.f64 phi2))) (sin.f64 (+.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) (fabs.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) phi2)) (sin.f64 (+.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))) phi2))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 (-.f64 lambda1 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (fabs.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (fabs.f64 (-.f64 lambda1 lambda2))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))) (cos.f64 (-.f64 phi2 (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 lambda1 lambda2) phi2)) (cos.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2)))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (neg.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (fabs.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
(/.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) #s(literal 2 binary64))
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2) #s(literal 1 binary64))
(fma.f64 phi2 (*.f64 phi2 #s(literal -1/2 binary64)) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64))))
(+.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))
(*.f64 (neg.f64 phi2) (neg.f64 phi2))
(*.f64 (fabs.f64 phi2) (fabs.f64 phi2))
(*.f64 phi2 phi2)
(pow.f64 (neg.f64 phi2) #s(literal 2 binary64))
(pow.f64 (fabs.f64 phi2) #s(literal 2 binary64))
(pow.f64 phi2 #s(literal 2 binary64))
(fabs.f64 (*.f64 phi2 phi2))
#s(literal -1/2 binary64)
#s(literal 1 binary64)
(neg.f64 (-.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
(sin.f64 (-.f64 lambda1 lambda2))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(neg.f64 (-.f64 lambda2 lambda1))
(fma.f64 #s(literal -1 binary64) lambda2 lambda1)
(fma.f64 lambda2 #s(literal -1 binary64) lambda1)
(-.f64 lambda1 (*.f64 #s(literal 1 binary64) lambda2))
(-.f64 lambda1 (neg.f64 (neg.f64 lambda2)))
(-.f64 lambda1 lambda2)
(+.f64 (neg.f64 lambda2) lambda1)
(+.f64 lambda1 (neg.f64 lambda2))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))))
(fma.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))))
(-.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 (neg.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))
(-.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))))
(+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
(fma.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))
(fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))
(fma.f64 (*.f64 phi1 phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) phi1) phi1) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 phi1 phi1)) (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64))))
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) phi1) phi1)))
(+.f64 (*.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) phi1) phi1) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) phi1) phi1))
(neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64))))
(fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64))
(fma.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1) #s(literal -1/2 binary64))
(fma.f64 phi1 (*.f64 phi1 #s(literal 1/24 binary64)) #s(literal -1/2 binary64))
(-.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(+.f64 (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)) #s(literal -1/2 binary64))
(+.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)))
(*.f64 (neg.f64 phi1) (neg.f64 phi1))
(*.f64 (fabs.f64 phi1) (fabs.f64 phi1))
(*.f64 phi1 phi1)
(pow.f64 (neg.f64 phi1) #s(literal 2 binary64))
(pow.f64 (fabs.f64 phi1) #s(literal 2 binary64))
(pow.f64 phi1 #s(literal 2 binary64))
(fabs.f64 (*.f64 phi1 phi1))
#s(literal 1/24 binary64)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (neg.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(-.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (fabs.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2)))))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (neg.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) (fabs.f64 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (fabs.f64 phi2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (-.f64 lambda1 lambda2) phi2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2)))
(*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64)))))
(-.f64 (cos.f64 phi1) (neg.f64 (cos.f64 phi2)))
(+.f64 (cos.f64 phi1) (cos.f64 phi2))
(+.f64 (cos.f64 phi2) (cos.f64 phi1))
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 (atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(atan2.f64 (*.f64 #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64))))
(*.f64 #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))))
#s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
(neg.f64 (-.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 #s(literal -1 binary64) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) lambda1))
(fma.f64 (sin.f64 lambda2) #s(literal -1 binary64) (*.f64 (cos.f64 lambda2) lambda1))
(fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))
(fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2)))
(-.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (neg.f64 lambda1) (cos.f64 lambda2)))
(-.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 (*.f64 (cos.f64 lambda2) lambda1)))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (neg.f64 (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))
(+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2)))
(*.f64 #s(literal -1 binary64) (sin.f64 lambda2))
(*.f64 (sin.f64 lambda2) #s(literal -1 binary64))
(neg.f64 (sin.f64 lambda2))
(sin.f64 (+.f64 lambda2 (PI.f64)))
(sin.f64 (neg.f64 lambda2))
(cos.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1 binary64))
(-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))
(*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 phi1 (-.f64 lambda1 lambda2)) #s(literal 2 binary64)))))
(-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (cos.f64 phi1)))
(-.f64 (cos.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))
(+.f64 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1))
#s(approx lambda1 lambda1)
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 phi2)) (sin.f64 lambda2) (*.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))))
#s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 lambda2) lambda1) #s(literal 1/2 binary64) (cos.f64 lambda2)) lambda1) (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/6 binary64) (*.f64 #s(literal 1/2 binary64) (sin.f64 lambda2))) lambda1 (cos.f64 lambda2)) lambda1) (sin.f64 lambda2)))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (fma.f64 (*.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64)) (cos.f64 lambda2) (cos.f64 lambda2)) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1)) (cos.f64 lambda2) (*.f64 #s(literal -1/6 binary64) (cos.f64 lambda2))) (*.f64 lambda1 lambda1) (cos.f64 lambda2)) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 lambda1 lambda1)) (cos.f64 lambda2) (*.f64 #s(literal 1/120 binary64) (cos.f64 lambda2))) (*.f64 lambda1 lambda1) (*.f64 #s(literal -1/6 binary64) (cos.f64 lambda2))) (*.f64 lambda1 lambda1) (cos.f64 lambda2)) lambda1))
#s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1))
#s(approx (sin lambda1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1) #s(literal -1/6 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (sin lambda1) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 lambda1 lambda1) #s(literal 1/120 binary64)) (*.f64 lambda1 lambda1) #s(literal -1/6 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (fma.f64 (*.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64)) (sin.f64 lambda2) (sin.f64 lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) (fma.f64 (fma.f64 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)) #s(literal 1/24 binary64) (*.f64 (sin.f64 lambda2) #s(literal -1/2 binary64))) (*.f64 lambda1 lambda1) (sin.f64 lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) (fma.f64 (fma.f64 (sin.f64 lambda2) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)) #s(literal -1/720 binary64) (*.f64 (sin.f64 lambda2) #s(literal 1/24 binary64))) (*.f64 lambda1 lambda1))) (*.f64 lambda1 lambda1) (sin.f64 lambda2)))
#s(approx (cos lambda1) #s(literal 1 binary64))
#s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos lambda1) (fma.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)))
#s(approx (cos lambda1) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 lambda1 lambda1) #s(literal 1/24 binary64)) (*.f64 lambda1 lambda1) #s(literal -1/2 binary64)) (*.f64 lambda1 lambda1) #s(literal 1 binary64)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (sin.f64 lambda2) (cos.f64 phi2) (*.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 lambda2))) lambda1 (*.f64 (sin.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (sin.f64 lambda2) (cos.f64 phi2) (*.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 lambda2))) lambda1 (*.f64 (sin.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64) (sin.f64 lambda2)) lambda1 (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (fma.f64 lambda1 (fma.f64 (*.f64 (sin.f64 lambda2) lambda1) #s(literal -1/6 binary64) (*.f64 (cos.f64 lambda2) #s(literal -1/2 binary64))) (sin.f64 lambda2)) lambda1 (cos.f64 lambda2)))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (sin.f64 lambda2) lambda1))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (fma.f64 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)) #s(literal -1/6 binary64) (sin.f64 lambda2)) lambda1))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)) #s(literal 1/120 binary64) (*.f64 (sin.f64 lambda2) #s(literal -1/6 binary64))) (*.f64 lambda1 lambda1) (sin.f64 lambda2)) lambda1))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 lambda2) (*.f64 (fma.f64 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)) #s(literal -1/5040 binary64) (*.f64 (sin.f64 lambda2) #s(literal 1/120 binary64))) (*.f64 lambda1 lambda1))) (*.f64 lambda1 lambda1) (sin.f64 lambda2)) lambda1))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (neg.f64 (sin.f64 lambda2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))))
#s(approx (sin (- lambda1 lambda2)) (neg.f64 (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/6 binary64))) lambda1 (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 lambda2))) lambda1 (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 lambda2))) lambda1 (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda1 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda1 (-.f64 (*.f64 (fma.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1) #s(literal 1/6 binary64) (*.f64 (cos.f64 lambda2) #s(literal -1/2 binary64))) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2)))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64)))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64)))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 lambda2))) lambda1 (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1)))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) (cos.f64 phi1)))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (fma.f64 lambda1 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2)) (cos.f64 phi1)))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (fma.f64 lambda1 (-.f64 (*.f64 (fma.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1) #s(literal 1/6 binary64) (*.f64 (cos.f64 lambda2) #s(literal -1/2 binary64))) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2)) (cos.f64 phi1)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))
#s(approx (sin lambda1) (sin.f64 lambda1))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
#s(approx (cos lambda1) (cos.f64 lambda1))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) (*.f64 (+.f64 (/.f64 (neg.f64 lambda2) lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (neg.f64 lambda1) (-.f64 (neg.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1)) #s(literal 1 binary64))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (neg.f64 lambda1) (-.f64 (neg.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))) (cos.f64 phi2)) (fma.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1)) #s(literal 1 binary64))))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))) (cos.f64 phi2)) (fma.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))) (cos.f64 phi2)))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))))
#s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (neg.f64 lambda1) (+.f64 (neg.f64 (cos.f64 lambda2)) (/.f64 (sin.f64 lambda2) lambda1))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (neg.f64 lambda1) (-.f64 (neg.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1)) #s(literal 1 binary64))))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (cos.f64 (+.f64 (neg.f64 lambda1) lambda2)) (cos.f64 phi1)))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (sin.f64 lambda1) (cos.f64 phi2) (neg.f64 (*.f64 (*.f64 (cos.f64 lambda1) lambda2) (cos.f64 phi2)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 lambda2 (cos.f64 phi2)) (sin.f64 lambda1)) (neg.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (sin.f64 lambda1))) lambda2)) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 lambda2 (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/2 binary64)) (cos.f64 lambda1)) (sin.f64 lambda1)))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal 1/6 binary64) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) lambda2) (cos.f64 lambda1)) lambda2 (sin.f64 lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/2 binary64)) (sin.f64 lambda1) (sin.f64 lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1)) #s(literal 1/24 binary64) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) (*.f64 lambda2 lambda2) (sin.f64 lambda1)))
#s(approx (* (sin lambda1) (cos lambda2)) (fma.f64 (fma.f64 (sin.f64 lambda1) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1)) #s(literal -1/720 binary64) (*.f64 (sin.f64 lambda1) #s(literal 1/24 binary64))) (*.f64 lambda2 lambda2))) (*.f64 lambda2 lambda2) (sin.f64 lambda1)))
#s(approx (cos lambda2) (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos lambda2) (fma.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)))
#s(approx (cos lambda2) (fma.f64 (fma.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 lambda2 lambda2) #s(literal -1/2 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)))
#s(approx lambda2 lambda2)
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (cos.f64 lambda1) lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/6 binary64)) (cos.f64 lambda1) (cos.f64 lambda1)) lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/120 binary64)) (cos.f64 lambda1) (*.f64 #s(literal -1/6 binary64) (cos.f64 lambda1))) (*.f64 lambda2 lambda2) (cos.f64 lambda1)) lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/5040 binary64)) (cos.f64 lambda1) (*.f64 #s(literal 1/120 binary64) (cos.f64 lambda1))) (*.f64 lambda2 lambda2) (*.f64 #s(literal -1/6 binary64) (cos.f64 lambda1))) (*.f64 lambda2 lambda2) (cos.f64 lambda1)) lambda2))
#s(approx (sin lambda2) (*.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda2))
#s(approx (sin lambda2) (*.f64 (fma.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)) lambda2))
#s(approx (sin lambda2) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 lambda2 lambda2) #s(literal -1/6 binary64)) (*.f64 lambda2 lambda2) #s(literal 1 binary64)) lambda2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda1) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 lambda2 (cos.f64 phi2)) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 phi2) (*.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))) lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 lambda2 (cos.f64 phi2)) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 phi2) (*.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))) lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal -1/2 binary64) (sin.f64 lambda1)) lambda2 (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 (fma.f64 lambda2 (fma.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/6 binary64) (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64))) (sin.f64 lambda1)) lambda2 (cos.f64 lambda1)))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (sin.f64 lambda1) lambda2))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/6 binary64)) (sin.f64 lambda1) (sin.f64 lambda1)) lambda2))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1)) #s(literal 1/120 binary64) (*.f64 (sin.f64 lambda1) #s(literal -1/6 binary64))) (*.f64 lambda2 lambda2) (sin.f64 lambda1)) lambda2))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 lambda1) (*.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1)) #s(literal -1/5040 binary64) (*.f64 (sin.f64 lambda1) #s(literal 1/120 binary64))) (*.f64 lambda2 lambda2))) (*.f64 lambda2 lambda2) (sin.f64 lambda1)) lambda2))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 lambda2 (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/2 binary64)) (cos.f64 lambda1)) (sin.f64 lambda1)))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal 1/6 binary64) (*.f64 (sin.f64 lambda1) #s(literal -1/2 binary64))) lambda2) (cos.f64 lambda1)) lambda2 (sin.f64 lambda1)))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda2 (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1)))
#s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda2 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/6 binary64) (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64))) lambda2) (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 phi1)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2))) (*.f64 lambda2 lambda2) (cos.f64 phi2)) (cos.f64 phi1)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (cos.f64 phi2))) (*.f64 lambda2 lambda2) (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2))) (*.f64 lambda2 lambda2) (cos.f64 phi2)) (cos.f64 phi1)))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1))
#s(approx (neg (sin lambda2)) (*.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal 1/6 binary64) #s(literal -1 binary64)) lambda2))
#s(approx (neg (sin lambda2)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 lambda2 lambda2) #s(literal 1/6 binary64)) (*.f64 lambda2 lambda2) #s(literal -1 binary64)) lambda2))
#s(approx (neg (sin lambda2)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 lambda2 lambda2) #s(literal -1/120 binary64)) (*.f64 lambda2 lambda2) #s(literal 1/6 binary64)) (*.f64 lambda2 lambda2) #s(literal -1 binary64)) lambda2))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda1) (cos.f64 phi2) #s(literal 1 binary64)))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (*.f64 lambda2 (cos.f64 phi2)) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) #s(literal 1 binary64)))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 phi2) (*.f64 (*.f64 #s(literal -1/2 binary64) lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))) lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) #s(literal 1 binary64)))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda2) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64)) (cos.f64 phi2))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) #s(literal 1 binary64)))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (cos.f64 lambda1) (cos.f64 phi1)))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (fma.f64 (sin.f64 lambda1) lambda2 (cos.f64 phi1)) (cos.f64 lambda1)))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (fma.f64 lambda2 (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda1))) (cos.f64 phi1)) (cos.f64 lambda1)))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (fma.f64 lambda2 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/6 binary64) (*.f64 (cos.f64 lambda1) #s(literal -1/2 binary64))) lambda2) (neg.f64 (sin.f64 lambda1))) (cos.f64 phi1)) (cos.f64 lambda1)))
#s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (sin (- lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda2) (+.f64 (/.f64 (neg.f64 lambda1) lambda2) #s(literal 1 binary64))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1))
#s(approx (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) phi1) phi1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) #s(literal 1 binary64)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1))) #s(literal 1 binary64)))
#s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
#s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
#s(approx phi1 phi1)
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) phi1) phi1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) #s(literal 1 binary64)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1))) #s(literal 1 binary64)))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)))
#s(approx (* phi1 phi1) (*.f64 phi1 phi1))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) phi1) phi1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)) (*.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1))))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) (cos.f64 phi2)) #s(literal 1 binary64)))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) phi1) phi1 (cos.f64 phi2)) #s(literal 1 binary64)))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) (cos.f64 phi2)) #s(literal 1 binary64)))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1 binary64)))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 1 binary64)))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) phi1) phi1 (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 1 binary64)))
#s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 1 binary64)))
#s(approx (cos phi1) (cos.f64 phi1))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (*.f64 (pow.f64 phi1 #s(literal 4 binary64)) #s(literal 1/24 binary64)))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (*.f64 (-.f64 #s(literal 1/24 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1))) (pow.f64 phi1 #s(literal 4 binary64))))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (*.f64 (-.f64 (+.f64 (pow.f64 phi1 #s(literal -4 binary64)) #s(literal 1/24 binary64)) (/.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1))) (pow.f64 phi1 #s(literal 4 binary64))))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) (*.f64 (-.f64 #s(literal 1/24 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1))) (*.f64 phi1 phi1)))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (-.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (-.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
#s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))
#s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64)))
#s(approx phi2 phi2)
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64) (*.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64) (*.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* phi2 phi2) (*.f64 phi2 phi2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (fma.f64 (fma.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64) (*.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64) (*.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 lambda2)) #s(literal -1/2 binary64) (cos.f64 phi1)) (cos.f64 lambda2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 lambda2)) #s(literal 1/24 binary64) (*.f64 (cos.f64 lambda2) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 phi1)) (cos.f64 lambda2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 lambda2)) #s(literal -1/720 binary64) (*.f64 (cos.f64 lambda2) #s(literal 1/24 binary64))) (*.f64 phi2 phi2) (*.f64 (cos.f64 lambda2) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 phi1)) (cos.f64 lambda2)))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) (cos.f64 phi1)) #s(literal 1 binary64)))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 1 binary64)))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 1 binary64)))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (fma.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64) (*.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal 1 binary64)))
#s(approx (cos phi2) (cos.f64 phi2))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2)))

eval182.0ms (1.4%)

Memory
19.0MiB live, 199.5MiB allocated; 40ms collecting garbage
Compiler

Compiled 7 864 to 3 112 computations (60.4% saved)

prune69.0ms (0.5%)

Memory
37.2MiB live, 175.1MiB allocated; 7ms collecting garbage
Pruning

58 alts after pruning (56 fresh and 2 done)

PrunedKeptTotal
New54533578
Fresh122335
Picked325
Done000
Total56058618
Accuracy
99.9%
Counts
618 → 58
Alt Table
Click to see full alt table
StatusAccuracyProgram
82.4%
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
71.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
75.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64)))))
99.6%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
81.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
85.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
81.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda1) (cos.f64 phi2) (cos.f64 phi1)))))
82.2%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
81.6%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 phi1)))))
81.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda1 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2))) (cos.f64 phi1)))))
76.2%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64))))))))
72.8%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1 binary64))))))
98.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
99.2%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
98.8%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
98.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2)))))))
98.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
85.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
56.8%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
83.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
82.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
80.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
81.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
74.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
77.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64)))))))))
72.6%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
68.6%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
70.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
72.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
78.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
87.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
69.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
98.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
82.8%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
98.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
98.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
83.1%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 phi2) #s(literal 1 binary64)))))
81.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
82.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
83.1%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))))
70.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
70.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
98.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
82.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
69.6%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
68.4%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
68.6%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
72.6%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
82.1%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
68.4%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
72.0%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
75.5%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
82.2%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
60.0%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
57.4%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
68.6%
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
63.0%
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
98.7%
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
Compiler

Compiled 3 497 to 3 003 computations (14.1% saved)

series78.0ms (0.6%)

Memory
-14.6MiB live, 170.6MiB allocated; 24ms collecting garbage
Counts
67 → 297
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
lambda1
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))))
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
(cos.f64 lambda2)
lambda2
#s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))
(sin.f64 lambda2)
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
(cos.f64 phi1)
phi1
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(cos.f64 lambda1)
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 phi2 phi2)
#s(literal -1/2 binary64)
#s(literal 1 binary64)
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
(fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64))
(*.f64 phi1 phi1)
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64))))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64))))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))
(+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1))
(fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64))
(fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64))
#s(literal -1/720 binary64)
#s(literal 1/24 binary64)
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))))
(*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))
(neg.f64 (sin.f64 lambda2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))
(fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64)))
(+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))
(fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(neg.f64 lambda1)
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 lambda2) (cos.f64 phi2))
Outputs
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))
#s(approx lambda1 #s(hole binary64 lambda1))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* lambda1 (- (* -1/6 (* lambda1 (cos lambda2))) (* -1/2 (sin lambda2)))))) (sin lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1/6 (* (pow lambda1 2) (cos lambda2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* 1/120 (* (pow lambda1 2) (cos lambda2)))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (cos lambda2))) (* 1/120 (cos lambda2))))))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* -1/6 (pow lambda1 2))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* 1/120 (pow lambda1 2)) 1/6))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/120 (* -1/5040 (pow lambda1 2)))) 1/6))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (sin lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (sin lambda2))) (* 1/24 (sin lambda2)))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (* (cos lambda2) (cos phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (* (cos phi2) (sin lambda2))) (* (cos lambda2) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (cos phi2)))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (cos phi2))) (* -1/6 (* lambda1 (* (cos phi2) (sin lambda2)))))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos lambda2) (cos phi2))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (sin lambda2))) (* (cos lambda2) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (cos phi2)))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (cos phi2))) (* -1/6 (* lambda1 (* (cos phi2) (sin lambda2)))))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (cos lambda2)))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (sin lambda2)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (+ (sin lambda2) (* -1/2 (* lambda1 (cos lambda2))))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (+ (sin lambda2) (* lambda1 (+ (* -1/2 (cos lambda2)) (* -1/6 (* lambda1 (sin lambda2))))))))))
#s(approx (cos lambda1) #s(hole binary64 1))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* -1/2 (pow lambda1 2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* 1/24 (pow lambda1 2)) 1/2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/24 (* -1/720 (pow lambda1 2)))) 1/2)))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (sin lambda2))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* -1/6 (* (pow lambda1 2) (sin lambda2)))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* 1/120 (* (pow lambda1 2) (sin lambda2)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (sin lambda2))) (* 1/120 (sin lambda2))))))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg lambda2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (neg lambda2))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (* (cos lambda2) (cos phi2)))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (* lambda1 (* (cos phi2) (sin lambda2))) (* (cos lambda2) (cos phi2))))))
#s(approx (neg lambda1) #s(hole binary64 (* -1 lambda1)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda2) (sin lambda1))))
#s(approx (sin lambda1) #s(hole binary64 (sin lambda1)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))
#s(approx (cos lambda1) #s(hole binary64 (cos lambda1)))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* (sin lambda1) (sin lambda2))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) lambda1)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (- lambda1 lambda2)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1 (/ (sin lambda2) lambda1))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (* lambda1 (* (cos phi2) (sin lambda2)))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (* lambda1 (+ (* (cos phi2) (sin lambda2)) (+ (/ 1 lambda1) (/ (* (cos lambda2) (cos phi2)) lambda1))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (* lambda1 (+ (* (cos phi2) (sin lambda2)) (/ (* (cos lambda2) (cos phi2)) lambda1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) lambda1)) 1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))) lambda1)) 1)))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* -1 (* lambda1 (+ (* -1 (cos lambda2)) (/ (sin lambda2) lambda1))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (* -1 (* lambda1 (+ (* -1 (* (cos phi2) (sin lambda2))) (* -1 (/ (+ 1 (* (cos lambda2) (cos phi2))) lambda1)))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (* -1 (* lambda1 (+ (* -1 (* (cos phi2) (sin lambda2))) (* -1 (/ (* (cos lambda2) (cos phi2)) lambda1)))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))) (cos lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1/2 (* (pow lambda2 2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* 1/24 (* (pow lambda2 2) (sin lambda1))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (sin lambda1))) (* 1/24 (sin lambda1)))))))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* -1/2 (pow lambda2 2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* 1/24 (pow lambda2 2)) 1/2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/24 (* -1/720 (pow lambda2 2)))) 1/2)))))
#s(approx lambda2 #s(hole binary64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (cos lambda1))) (* 1/120 (cos lambda1))))))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* -1/6 (pow lambda2 2))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* 1/120 (pow lambda2 2)) 1/6))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/120 (* -1/5040 (pow lambda2 2)))) 1/6))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (* (cos lambda1) (cos phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos lambda1) (cos phi2))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (+ (sin lambda1) (* -1/2 (* lambda2 (cos lambda1))))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (+ (sin lambda1) (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (sin lambda1))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* -1/6 (* (pow lambda2 2) (sin lambda1)))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* 1/120 (* (pow lambda2 2) (sin lambda1)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (sin lambda1))) (* 1/120 (sin lambda1))))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (cos phi2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* -1/2 (* (pow lambda2 2) (cos phi2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* 1/24 (* (pow lambda2 2) (cos phi2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (cos phi2))) (* 1/24 (cos phi2))))))))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* -1/2 (* lambda1 lambda2)) 1)))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* lambda2 (+ (* -1/2 lambda1) (* 1/6 lambda2))) 1)))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* 1/6 (pow lambda2 2)) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* -1/120 (pow lambda2 2)))) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* (pow lambda2 2) (- (* 1/5040 (pow lambda2 2)) 1/120)))) 1))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos lambda1) (cos phi2)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (cos phi2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos phi2) (* -1/2 (* (pow lambda2 2) (cos phi2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* 1/24 (* (pow lambda2 2) (cos phi2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (cos phi2))) (* 1/24 (cos phi2))))))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (cos phi2) (* lambda1 (* lambda2 (cos phi2)))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (cos phi2) (* lambda2 (+ (* -1/2 (* lambda2 (cos phi2))) (* lambda1 (cos phi2))))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (cos phi2) (* lambda2 (+ (* lambda1 (cos phi2)) (* lambda2 (+ (* -1/2 (cos phi2)) (* -1/6 (* lambda1 (* lambda2 (cos phi2))))))))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (cos phi2)))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (+ (cos phi2) (* lambda1 (* lambda2 (cos phi2))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (+ (cos phi2) (* lambda2 (+ (* -1/2 (* lambda2 (cos phi2))) (* lambda1 (cos phi2)))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (+ (cos phi2) (* lambda2 (+ (* lambda1 (cos phi2)) (* lambda2 (+ (* -1/2 (cos phi2)) (* -1/6 (* lambda1 (* lambda2 (cos phi2)))))))))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) #s(hole binary64 (* -1 (* lambda2 (cos phi2)))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos phi2)) (* 1/6 (* (pow lambda2 2) (cos phi2)))))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos phi2)) (* (pow lambda2 2) (+ (* -1/120 (* (pow lambda2 2) (cos phi2))) (* 1/6 (cos phi2))))))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos phi2)) (* (pow lambda2 2) (+ (* 1/6 (cos phi2)) (* (pow lambda2 2) (+ (* -1/120 (cos phi2)) (* 1/5040 (* (pow lambda2 2) (cos phi2)))))))))))
#s(approx (* (cos lambda2) (cos phi2)) #s(hole binary64 (+ (cos phi2) (* -1/2 (* (pow lambda2 2) (cos phi2))))))
#s(approx (* (cos lambda2) (cos phi2)) #s(hole binary64 (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* 1/24 (* (pow lambda2 2) (cos phi2))))))))
#s(approx (* (cos lambda2) (cos phi2)) #s(hole binary64 (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (cos phi2))) (* 1/24 (cos phi2)))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 phi1))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 -1/2))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 (- (* 1/24 (pow phi1 2)) 1/2)))
#s(approx (* phi1 phi1) #s(hole binary64 (pow phi1 2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos lambda2) (cos phi2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi2) (* -1/2 (pow phi1 2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi2) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi2) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (+ 2 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (+ 2 (+ (* -1/2 (pow phi1 2)) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (+ 2 (+ (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (+ 2 (+ (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) #s(hole binary64 (* 1/24 (pow phi1 4))))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) #s(hole binary64 (* (pow phi1 4) (- 1/24 (* 1/2 (/ 1 (pow phi1 2)))))))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) #s(hole binary64 (* (pow phi1 4) (- (+ 1/24 (/ 1 (pow phi1 4))) (* 1/2 (/ 1 (pow phi1 2)))))))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 (* 1/24 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 (* (pow phi1 2) (- 1/24 (* 1/2 (/ 1 (pow phi1 2)))))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (+ 1 (+ (cos phi1) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* -1/2 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* (cos lambda2) (sin lambda1))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* 1/24 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* -1/2 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/24 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/24 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (* phi2 phi2) #s(hole binary64 (pow phi2 2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (cos (- lambda1 lambda2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2)))))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2))))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (cos phi1))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* -1/2 (* (pow phi2 2) (cos lambda2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* 1/24 (* (pow phi2 2) (cos lambda2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos lambda2))) (* 1/24 (cos lambda2))))))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (cos phi1))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi1) (* -1/2 (pow phi2 2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi1) (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2))))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (* -1/2 (pow phi2 2)))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) #s(hole binary64 (- (* 1/24 (pow phi2 2)) 1/2)))
#s(approx (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) #s(hole binary64 (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))
#s(approx (+ (* (* phi2 phi2) -1/720) 1/24) #s(hole binary64 1/24))
#s(approx (+ (* (* phi2 phi2) -1/720) 1/24) #s(hole binary64 (+ 1/24 (* -1/720 (pow phi2 2)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (cos (- lambda1 lambda2)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2)))))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (cos lambda2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos lambda2) (* -1/2 (* (pow phi2 2) (cos lambda2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos lambda2) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* 1/24 (* (pow phi2 2) (cos lambda2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos lambda2) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos lambda2))) (* 1/24 (cos lambda2))))))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (cos lambda2) (* lambda1 (sin lambda2))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (cos lambda2) (+ (* lambda1 (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* -1/2 (* lambda1 (sin lambda2))))))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (cos lambda2) (+ (* lambda1 (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (+ (* -1/2 (* lambda1 (sin lambda2))) (* (pow phi2 2) (+ (* 1/24 (cos lambda2)) (* 1/24 (* lambda1 (sin lambda2)))))))))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (cos lambda2) (+ (* lambda1 (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (+ (* -1/2 (* lambda1 (sin lambda2))) (* (pow phi2 2) (+ (* 1/24 (cos lambda2)) (+ (* 1/24 (* lambda1 (sin lambda2))) (* (pow phi2 2) (+ (* -1/720 (cos lambda2)) (* -1/720 (* lambda1 (sin lambda2))))))))))))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (+ (cos lambda2) (+ (* lambda1 (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* -1/2 (* lambda1 (sin lambda2)))))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (+ (cos lambda2) (+ (* lambda1 (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (+ (* -1/2 (* lambda1 (sin lambda2))) (* (pow phi2 2) (+ (* 1/24 (cos lambda2)) (* 1/24 (* lambda1 (sin lambda2))))))))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (+ (cos lambda2) (+ (* lambda1 (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (+ (* -1/2 (* lambda1 (sin lambda2))) (* (pow phi2 2) (+ (* 1/24 (cos lambda2)) (+ (* 1/24 (* lambda1 (sin lambda2))) (* (pow phi2 2) (+ (* -1/720 (cos lambda2)) (* -1/720 (* lambda1 (sin lambda2)))))))))))))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* 1/2 (* (pow phi2 2) (sin lambda2))))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow phi2 2) (+ (* -1/24 (* (pow phi2 2) (sin lambda2))) (* 1/2 (sin lambda2)))))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow phi2 2) (+ (* 1/2 (sin lambda2)) (* (pow phi2 2) (+ (* -1/24 (sin lambda2)) (* 1/720 (* (pow phi2 2) (sin lambda2))))))))))
#s(approx (* (cos lambda2) (cos phi2)) #s(hole binary64 (+ (cos lambda2) (* -1/2 (* (pow phi2 2) (cos lambda2))))))
#s(approx (* (cos lambda2) (cos phi2)) #s(hole binary64 (+ (cos lambda2) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* 1/24 (* (pow phi2 2) (cos lambda2))))))))
#s(approx (* (cos lambda2) (cos phi2)) #s(hole binary64 (+ (cos lambda2) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos lambda2))) (* 1/24 (cos lambda2)))))))))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) #s(hole binary64 (* -1/2 (pow phi2 2))))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) #s(hole binary64 (* (pow phi2 2) (- (/ 1 (pow phi2 2)) 1/2))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (* -1/720 (pow phi2 6))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (* (pow phi2 6) (- (* 1/24 (/ 1 (pow phi2 2))) 1/720))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (* (pow phi2 6) (- (* 1/24 (/ 1 (pow phi2 2))) (+ 1/720 (/ 1/2 (pow phi2 4)))))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (* (pow phi2 6) (- (+ (* 1/24 (/ 1 (pow phi2 2))) (+ (/ 1 (pow phi2 6)) (/ (cos phi1) (pow phi2 6)))) (+ 1/720 (/ 1/2 (pow phi2 4)))))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (* (pow phi2 6) (- (+ (* 1/24 (/ 1 (pow phi2 2))) (/ (cos phi1) (pow phi2 6))) (+ 1/720 (/ 1/2 (pow phi2 4)))))))
#s(approx (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) #s(hole binary64 (* -1/720 (pow phi2 4))))
#s(approx (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) #s(hole binary64 (* (pow phi2 4) (- (* 1/24 (/ 1 (pow phi2 2))) 1/720))))
#s(approx (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) #s(hole binary64 (* (pow phi2 4) (- (* 1/24 (/ 1 (pow phi2 2))) (+ 1/720 (/ 1/2 (pow phi2 4)))))))
#s(approx (+ (* (* phi2 phi2) -1/720) 1/24) #s(hole binary64 (* -1/720 (pow phi2 2))))
#s(approx (+ (* (* phi2 phi2) -1/720) 1/24) #s(hole binary64 (* (pow phi2 2) (- (* 1/24 (/ 1 (pow phi2 2))) 1/720))))
Calls

12 calls:

TimeVariablePointExpression
10.0ms
phi2
@-inf
((+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (cos phi2) phi2 (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (sin lambda2) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (cos phi1) phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) (cos lambda1) (* (sin lambda1) (sin lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (+ (* (* phi2 phi2) -1/2) 1) (* phi2 phi2) -1/2 1 (sin (- lambda1 lambda2)) (- lambda1 lambda2) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1) (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+ (cos phi1) (cos phi2)) (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (+ (* (* phi2 phi2) -1/720) 1/24) -1/720 1/24 (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (sin (- lambda1 lambda2)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+ (* (cos lambda2) (cos phi2)) 1) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) (neg lambda1) (* (neg (sin lambda2)) (cos phi2)) (* (cos lambda2) (cos phi2)))
8.0ms
lambda2
@inf
((+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (cos phi2) phi2 (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (sin lambda2) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (cos phi1) phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) (cos lambda1) (* (sin lambda1) (sin lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (+ (* (* phi2 phi2) -1/2) 1) (* phi2 phi2) -1/2 1 (sin (- lambda1 lambda2)) (- lambda1 lambda2) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1) (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+ (cos phi1) (cos phi2)) (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (+ (* (* phi2 phi2) -1/720) 1/24) -1/720 1/24 (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (sin (- lambda1 lambda2)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+ (* (cos lambda2) (cos phi2)) 1) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) (neg lambda1) (* (neg (sin lambda2)) (cos phi2)) (* (cos lambda2) (cos phi2)))
7.0ms
phi1
@inf
((+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (cos phi2) phi2 (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (sin lambda2) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (cos phi1) phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) (cos lambda1) (* (sin lambda1) (sin lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (+ (* (* phi2 phi2) -1/2) 1) (* phi2 phi2) -1/2 1 (sin (- lambda1 lambda2)) (- lambda1 lambda2) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1) (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+ (cos phi1) (cos phi2)) (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (+ (* (* phi2 phi2) -1/720) 1/24) -1/720 1/24 (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (sin (- lambda1 lambda2)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+ (* (cos lambda2) (cos phi2)) 1) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) (neg lambda1) (* (neg (sin lambda2)) (cos phi2)) (* (cos lambda2) (cos phi2)))
7.0ms
phi2
@inf
((+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (cos phi2) phi2 (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (sin lambda2) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (cos phi1) phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) (cos lambda1) (* (sin lambda1) (sin lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (+ (* (* phi2 phi2) -1/2) 1) (* phi2 phi2) -1/2 1 (sin (- lambda1 lambda2)) (- lambda1 lambda2) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1) (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+ (cos phi1) (cos phi2)) (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (+ (* (* phi2 phi2) -1/720) 1/24) -1/720 1/24 (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (sin (- lambda1 lambda2)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+ (* (cos lambda2) (cos phi2)) 1) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) (neg lambda1) (* (neg (sin lambda2)) (cos phi2)) (* (cos lambda2) (cos phi2)))
5.0ms
lambda2
@-inf
((+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (cos phi2) phi2 (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (* (sin lambda1) (cos lambda2)) (sin lambda1) (cos lambda2) lambda2 (* (cos lambda1) (sin lambda2)) (sin lambda2) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (cos phi1) phi1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) (cos lambda1) (* (sin lambda1) (sin lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (+ (* (* phi2 phi2) -1/2) 1) (* phi2 phi2) -1/2 1 (sin (- lambda1 lambda2)) (- lambda1 lambda2) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos phi1) (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1) (* (cos phi2) (cos (- lambda1 lambda2))) (cos (- lambda1 lambda2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+ (cos phi1) (cos phi2)) (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (+ (* (* phi2 phi2) -1/720) 1/24) -1/720 1/24 (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (sin (- lambda1 lambda2)) (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (neg (sin lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+ (* (cos lambda2) (cos phi2)) 1) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) (neg lambda1) (* (neg (sin lambda2)) (cos phi2)) (* (cos lambda2) (cos phi2)))

rewrite258.0ms (2%)

Memory
17.9MiB live, 346.7MiB allocated; 114ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
012079404
012938509
087898209
1237408209
Stop Event
saturated
node-limit
iter-limit
Counts
364 → 516
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
lambda1
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))))
(cos.f64 phi2)
phi2
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(sin.f64 lambda1)
(cos.f64 lambda2)
lambda2
#s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))
(sin.f64 lambda2)
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))
(cos.f64 phi1)
phi1
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(cos.f64 lambda1)
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 phi2 phi2)
#s(literal -1/2 binary64)
#s(literal 1 binary64)
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 lambda1 lambda2)
(+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64)))
(fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64))
(*.f64 phi1 phi1)
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64))))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64))))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))
(+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1))
(fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64))
(fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64))
#s(literal -1/720 binary64)
#s(literal 1/24 binary64)
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))))
(*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))
(neg.f64 (sin.f64 lambda2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))
(fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64)))
(+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))
(fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(neg.f64 lambda1)
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 lambda2) (cos.f64 phi2))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))
#s(approx lambda1 #s(hole binary64 lambda1))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* -1 (* (cos phi2) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (* (cos lambda2) (cos phi2))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* 1/2 (* lambda1 (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* (cos phi2) (sin lambda2))) (* lambda1 (+ (* lambda1 (+ (* -1/6 (* lambda1 (* (cos lambda2) (cos phi2)))) (* 1/2 (* (cos phi2) (sin lambda2))))) (* (cos lambda2) (cos phi2)))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (* -1 (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (cos lambda2)) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* 1/2 (* lambda1 (sin lambda2))))) (sin lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* lambda1 (+ (cos lambda2) (* lambda1 (- (* -1/6 (* lambda1 (cos lambda2))) (* -1/2 (sin lambda2)))))) (sin lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (cos lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1/6 (* (pow lambda1 2) (cos lambda2)))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* 1/120 (* (pow lambda1 2) (cos lambda2)))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* (pow lambda1 2) (+ (* -1/6 (cos lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (cos lambda2))) (* 1/120 (cos lambda2))))))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* -1/6 (pow lambda1 2))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* 1/120 (pow lambda1 2)) 1/6))))))
#s(approx (sin lambda1) #s(hole binary64 (* lambda1 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/120 (* -1/5040 (pow lambda1 2)))) 1/6))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (sin lambda2)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* -1/2 (* (pow lambda1 2) (sin lambda2))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* 1/24 (* (pow lambda1 2) (sin lambda2))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/2 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/720 (* (pow lambda1 2) (sin lambda2))) (* 1/24 (sin lambda2)))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (* (cos lambda2) (cos phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (* (cos phi2) (sin lambda2))) (* (cos lambda2) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (cos phi2)))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (cos phi2))) (* -1/6 (* lambda1 (* (cos phi2) (sin lambda2)))))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos lambda2) (cos phi2))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (sin lambda2))) (* (cos lambda2) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos lambda2) (cos phi2)))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos lambda2) (cos phi2))) (* -1/6 (* lambda1 (* (cos phi2) (sin lambda2)))))) (* (cos phi2) (sin lambda2)))) (* (cos lambda2) (cos phi2)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (cos lambda2)))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (sin lambda2)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (+ (sin lambda2) (* -1/2 (* lambda1 (cos lambda2))))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda2) (* lambda1 (+ (sin lambda2) (* lambda1 (+ (* -1/2 (cos lambda2)) (* -1/6 (* lambda1 (sin lambda2))))))))))
#s(approx (cos lambda1) #s(hole binary64 1))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* -1/2 (pow lambda1 2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* 1/24 (pow lambda1 2)) 1/2)))))
#s(approx (cos lambda1) #s(hole binary64 (+ 1 (* (pow lambda1 2) (- (* (pow lambda1 2) (+ 1/24 (* -1/720 (pow lambda1 2)))) 1/2)))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (sin lambda2))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* -1/6 (* (pow lambda1 2) (sin lambda2)))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* 1/120 (* (pow lambda1 2) (sin lambda2)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda1 (+ (sin lambda2) (* (pow lambda1 2) (+ (* -1/6 (sin lambda2)) (* (pow lambda1 2) (+ (* -1/5040 (* (pow lambda1 2) (sin lambda2))) (* 1/120 (sin lambda2))))))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg lambda2)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (* (cos phi2) (cos (neg lambda2)))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1/2 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* lambda1 (+ (* -1/2 (* (cos phi2) (sin (neg lambda2)))) (* -1/6 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))) (* (cos phi2) (sin (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg lambda2))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (cos (neg lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* -1/2 (* lambda1 (sin (neg lambda2)))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin (neg lambda2)) (* lambda1 (+ (cos (neg lambda2)) (* lambda1 (+ (* -1/2 (sin (neg lambda2))) (* -1/6 (* lambda1 (cos (neg lambda2)))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 lambda2)))
#s(approx (- lambda1 lambda2) #s(hole binary64 (- lambda1 lambda2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg lambda2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* -1 (* lambda1 (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* -1/2 (* lambda1 (cos (neg lambda2)))) (sin (neg lambda2)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos (neg lambda2)) (* lambda1 (- (* lambda1 (+ (* -1/2 (cos (neg lambda2))) (* 1/6 (* lambda1 (sin (neg lambda2)))))) (sin (neg lambda2)))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (neg lambda2))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* -1 (* lambda1 (* (cos phi2) (sin (neg lambda2))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* -1/2 (* lambda1 (* (cos phi2) (cos (neg lambda2))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda1 (+ (* -1 (* (cos phi2) (sin (neg lambda2)))) (* lambda1 (+ (* -1/2 (* (cos phi2) (cos (neg lambda2)))) (* 1/6 (* lambda1 (* (cos phi2) (sin (neg lambda2))))))))) (* (cos phi2) (cos (neg lambda2)))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (* (cos lambda2) (cos phi2)))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (* lambda1 (* (cos phi2) (sin lambda2))) (* (cos lambda2) (cos phi2))))))
#s(approx (neg lambda1) #s(hole binary64 (* -1 lambda1)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (* (cos lambda2) (sin lambda1))))
#s(approx (sin lambda1) #s(hole binary64 (sin lambda1)))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* (cos lambda1) (sin lambda2))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))
#s(approx (cos lambda1) #s(hole binary64 (cos lambda1)))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* (sin lambda1) (sin lambda2))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* lambda1 (+ 1 (/ (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) lambda1)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (- lambda1 lambda2)))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (- lambda1 lambda2))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda1 (+ 1 (* -1 (/ lambda2 lambda1))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (- lambda1 lambda2)))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (- lambda1 lambda2))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* lambda1 (+ (cos lambda2) (* -1 (/ (sin lambda2) lambda1))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (- lambda1 lambda2))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (* lambda1 (* (cos phi2) (sin lambda2)))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (* lambda1 (+ (* (cos phi2) (sin lambda2)) (+ (/ 1 lambda1) (/ (* (cos lambda2) (cos phi2)) lambda1))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (* lambda1 (+ (* (cos phi2) (sin lambda2)) (/ (* (cos lambda2) (cos phi2)) lambda1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))) lambda1)) 1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (* -1 (* lambda1 (- (* -1 (/ (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))) lambda1)) 1)))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1))))) (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda1 (- (/ lambda2 lambda1) 1)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (neg (+ lambda2 (* -1 lambda1))))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (* -1 (* lambda1 (+ (* -1 (cos lambda2)) (/ (sin lambda2) lambda1))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (neg (+ lambda2 (* -1 lambda1))))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (* -1 (* lambda1 (+ (* -1 (* (cos phi2) (sin lambda2))) (* -1 (/ (+ 1 (* (cos lambda2) (cos phi2))) lambda1)))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (* -1 (* lambda1 (+ (* -1 (* (cos phi2) (sin lambda2))) (* -1 (/ (* (cos lambda2) (cos phi2)) lambda1)))))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (* (cos phi2) (sin lambda1))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* -1/2 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1 (* (cos lambda1) (cos phi2))) (* lambda2 (+ (* -1/2 (* (cos phi2) (sin lambda1))) (* 1/6 (* lambda2 (* (cos lambda1) (cos phi2)))))))) (* (cos phi2) (sin lambda1)))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* -1 (* lambda2 (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* -1/2 (* lambda2 (sin lambda1))) (cos lambda1))))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) #s(hole binary64 (+ (sin lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))) (cos lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* -1/2 (* (pow lambda2 2) (sin lambda1))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* 1/24 (* (pow lambda2 2) (sin lambda1))))))))
#s(approx (* (sin lambda1) (cos lambda2)) #s(hole binary64 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/2 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (sin lambda1))) (* 1/24 (sin lambda1)))))))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* -1/2 (pow lambda2 2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* 1/24 (pow lambda2 2)) 1/2)))))
#s(approx (cos lambda2) #s(hole binary64 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/24 (* -1/720 (pow lambda2 2)))) 1/2)))))
#s(approx lambda2 #s(hole binary64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (cos lambda1))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* -1/6 (* (pow lambda2 2) (cos lambda1)))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* 1/120 (* (pow lambda2 2) (cos lambda1)))))))))
#s(approx (* (cos lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (cos lambda1) (* (pow lambda2 2) (+ (* -1/6 (cos lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (cos lambda1))) (* 1/120 (cos lambda1))))))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* -1/6 (pow lambda2 2))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* 1/120 (pow lambda2 2)) 1/6))))))
#s(approx (sin lambda2) #s(hole binary64 (* lambda2 (+ 1 (* (pow lambda2 2) (- (* (pow lambda2 2) (+ 1/120 (* -1/5040 (pow lambda2 2)))) 1/6))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (* (cos lambda1) (cos phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (* (cos lambda1) (cos phi2))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (sin lambda1)))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (+ (sin lambda1) (* -1/2 (* lambda2 (cos lambda1))))))))
#s(approx (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))) #s(hole binary64 (+ (cos lambda1) (* lambda2 (+ (sin lambda1) (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (sin lambda1))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* -1/6 (* (pow lambda2 2) (sin lambda1)))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* 1/120 (* (pow lambda2 2) (sin lambda1)))))))))
#s(approx (* (sin lambda1) (sin lambda2)) #s(hole binary64 (* lambda2 (+ (sin lambda1) (* (pow lambda2 2) (+ (* -1/6 (sin lambda1)) (* (pow lambda2 2) (+ (* -1/5040 (* (pow lambda2 2) (sin lambda1))) (* 1/120 (sin lambda1))))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* -1/2 (* lambda2 (sin lambda1))))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (+ (sin lambda1) (* lambda2 (+ (* -1 (cos lambda1)) (* lambda2 (+ (* -1/2 (sin lambda1)) (* 1/6 (* lambda2 (cos lambda1))))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (+ lambda1 (* -1 lambda2))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* -1/2 (* lambda2 (cos lambda1))) (* -1 (sin lambda1)))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (+ (cos lambda1) (* lambda2 (- (* lambda2 (+ (* -1/2 (cos lambda1)) (* -1/6 (* lambda2 (sin lambda1))))) (* -1 (sin lambda1)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (cos phi2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* -1/2 (* (pow lambda2 2) (cos phi2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* 1/24 (* (pow lambda2 2) (cos phi2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (cos phi2))) (* 1/24 (cos phi2))))))))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* -1/2 (* lambda1 lambda2)) 1)))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) #s(hole binary64 (+ lambda1 (* lambda2 (- (* lambda2 (+ (* -1/2 lambda1) (* 1/6 lambda2))) 1)))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* 1/6 (pow lambda2 2)) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* -1/120 (pow lambda2 2)))) 1))))
#s(approx (neg (sin lambda2)) #s(hole binary64 (* lambda2 (- (* (pow lambda2 2) (+ 1/6 (* (pow lambda2 2) (- (* 1/5040 (pow lambda2 2)) 1/120)))) 1))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos lambda1) (cos phi2)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda2 (* (cos phi2) (sin lambda1))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda2 (+ (* -1/2 (* lambda2 (* (cos lambda1) (cos phi2)))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (* lambda2 (+ (* lambda2 (+ (* -1/2 (* (cos lambda1) (cos phi2))) (* -1/6 (* lambda2 (* (cos phi2) (sin lambda1)))))) (* (cos phi2) (sin lambda1)))) (* (cos lambda1) (cos phi2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (cos phi2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos phi2) (* -1/2 (* (pow lambda2 2) (cos phi2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* 1/24 (* (pow lambda2 2) (cos phi2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (cos phi2))) (* 1/24 (cos phi2))))))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (cos phi2) (* lambda1 (* lambda2 (cos phi2)))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (cos phi2) (* lambda2 (+ (* -1/2 (* lambda2 (cos phi2))) (* lambda1 (cos phi2))))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (cos phi2) (* lambda2 (+ (* lambda1 (cos phi2)) (* lambda2 (+ (* -1/2 (cos phi2)) (* -1/6 (* lambda1 (* lambda2 (cos phi2))))))))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (cos phi2)))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (+ (cos phi2) (* lambda1 (* lambda2 (cos phi2))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (+ (cos phi2) (* lambda2 (+ (* -1/2 (* lambda2 (cos phi2))) (* lambda1 (cos phi2)))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (+ (cos phi2) (* lambda2 (+ (* lambda1 (cos phi2)) (* lambda2 (+ (* -1/2 (cos phi2)) (* -1/6 (* lambda1 (* lambda2 (cos phi2)))))))))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) #s(hole binary64 (* -1 (* lambda2 (cos phi2)))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos phi2)) (* 1/6 (* (pow lambda2 2) (cos phi2)))))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos phi2)) (* (pow lambda2 2) (+ (* -1/120 (* (pow lambda2 2) (cos phi2))) (* 1/6 (cos phi2))))))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) #s(hole binary64 (* lambda2 (+ (* -1 (cos phi2)) (* (pow lambda2 2) (+ (* 1/6 (cos phi2)) (* (pow lambda2 2) (+ (* -1/120 (cos phi2)) (* 1/5040 (* (pow lambda2 2) (cos phi2)))))))))))
#s(approx (* (cos lambda2) (cos phi2)) #s(hole binary64 (+ (cos phi2) (* -1/2 (* (pow lambda2 2) (cos phi2))))))
#s(approx (* (cos lambda2) (cos phi2)) #s(hole binary64 (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* 1/24 (* (pow lambda2 2) (cos phi2))))))))
#s(approx (* (cos lambda2) (cos phi2)) #s(hole binary64 (+ (cos phi2) (* (pow lambda2 2) (+ (* -1/2 (cos phi2)) (* (pow lambda2 2) (+ (* -1/720 (* (pow lambda2 2) (cos phi2))) (* 1/24 (cos phi2)))))))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* lambda2 (- (/ lambda1 lambda2) 1))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) #s(hole binary64 (+ lambda1 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) #s(hole binary64 (atan2 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (sin (+ lambda1 (* -1 lambda2))))))
#s(approx (sin (- lambda1 lambda2)) #s(hole binary64 (sin (+ lambda1 (* -1 lambda2)))))
#s(approx (- lambda1 lambda2) #s(hole binary64 (* -1 (* lambda2 (+ 1 (* -1 (/ lambda1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (* (cos phi2) (cos (+ lambda1 (* -1 lambda2))))))
#s(approx (cos (- lambda1 lambda2)) #s(hole binary64 (cos (+ lambda1 (* -1 lambda2)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (* (cos phi2) (cos (+ lambda1 (* -1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* -1/2 (pow phi1 2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)))))
#s(approx (cos phi1) #s(hole binary64 (+ 1 (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)))))
#s(approx phi1 #s(hole binary64 phi1))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos phi2) (cos (- lambda1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ 1 (+ (* (cos phi2) (cos (- lambda1 lambda2))) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 -1/2))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 (- (* 1/24 (pow phi1 2)) 1/2)))
#s(approx (* phi1 phi1) #s(hole binary64 (pow phi1 2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (cos lambda2) (cos phi2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (cos lambda2) (cos phi2)) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi2) (* -1/2 (pow phi1 2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi2) (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi2) (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2))))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (+ 2 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (+ 2 (+ (* -1/2 (pow phi1 2)) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (+ 2 (+ (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (+ 2 (+ (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* -1/2 (pow phi1 2)) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (pow phi1 2) (- (* 1/24 (pow phi1 2)) 1/2)) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (+ 1 (+ (* (pow phi1 2) (- (* (pow phi1 2) (+ 1/24 (* -1/720 (pow phi1 2)))) 1/2)) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (cos phi1) #s(hole binary64 (cos phi1)))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) #s(hole binary64 (* 1/24 (pow phi1 4))))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) #s(hole binary64 (* (pow phi1 4) (- 1/24 (* 1/2 (/ 1 (pow phi1 2)))))))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) #s(hole binary64 (* (pow phi1 4) (- (+ 1/24 (/ 1 (pow phi1 4))) (* 1/2 (/ 1 (pow phi1 2)))))))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 (* 1/24 (pow phi1 2))))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(hole binary64 (* (pow phi1 2) (- 1/24 (* 1/2 (/ 1 (pow phi1 2)))))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (+ 1 (+ (cos phi1) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2))))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (* (pow phi2 2) (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* -1/2 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* (cos lambda2) (sin lambda1))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) #s(hole binary64 (- (+ (* (cos lambda2) (sin lambda1)) (* (pow phi2 2) (+ (* -1/2 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))) (* 1/24 (- (* (cos lambda2) (sin lambda1)) (* (cos lambda1) (sin lambda2))))))))) (* (cos lambda1) (sin lambda2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* -1/2 (pow phi2 2)))))
#s(approx (cos phi2) #s(hole binary64 (+ 1 (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx phi2 #s(hole binary64 phi2))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* -1/2 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) #s(hole binary64 (+ (cos phi1) (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/24 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* -1/2 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* 1/24 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))))))))))
#s(approx (* (cos phi2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) #s(hole binary64 (+ (* (cos lambda1) (cos lambda2)) (+ (* (sin lambda1) (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2)))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))) (* 1/24 (+ (* (cos lambda1) (cos lambda2)) (* (sin lambda1) (sin lambda2))))))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (sin (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) #s(hole binary64 (+ (sin (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (sin (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (sin (- lambda1 lambda2)))) (* 1/24 (sin (- lambda1 lambda2))))))))))
#s(approx (* phi2 phi2) #s(hole binary64 (pow phi2 2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (cos (- lambda1 lambda2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(hole binary64 (+ (cos phi1) (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2)))))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2)))))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) #s(hole binary64 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2))))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (cos phi1))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* -1/2 (* (pow phi2 2) (cos lambda2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* 1/24 (* (pow phi2 2) (cos lambda2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(hole binary64 (+ (cos lambda2) (+ (cos phi1) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos lambda2))) (* 1/24 (cos lambda2))))))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (cos phi1))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi1) (* -1/2 (pow phi2 2))))))
#s(approx (+ (cos phi1) (cos phi2)) #s(hole binary64 (+ 1 (+ (cos phi1) (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2))))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (* -1/2 (pow phi2 2)))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (+ (cos phi1) (* (pow phi2 2) (- (* 1/24 (pow phi2 2)) 1/2)))))
#s(approx (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) #s(hole binary64 (- (* 1/24 (pow phi2 2)) 1/2)))
#s(approx (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) #s(hole binary64 (- (* (pow phi2 2) (+ 1/24 (* -1/720 (pow phi2 2)))) 1/2)))
#s(approx (+ (* (* phi2 phi2) -1/720) 1/24) #s(hole binary64 1/24))
#s(approx (+ (* (* phi2 phi2) -1/720) 1/24) #s(hole binary64 (+ 1/24 (* -1/720 (pow phi2 2)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (cos (- lambda1 lambda2)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* -1/2 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* 1/24 (* (pow phi2 2) (cos (- lambda1 lambda2))))))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos (- lambda1 lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos (- lambda1 lambda2))) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos (- lambda1 lambda2)))) (* 1/24 (cos (- lambda1 lambda2)))))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (cos lambda2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos lambda2) (* -1/2 (* (pow phi2 2) (cos lambda2)))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos lambda2) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* 1/24 (* (pow phi2 2) (cos lambda2)))))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) #s(hole binary64 (+ 1 (+ (cos lambda2) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos lambda2))) (* 1/24 (cos lambda2))))))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (cos lambda2) (* lambda1 (sin lambda2))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (cos lambda2) (+ (* lambda1 (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* -1/2 (* lambda1 (sin lambda2))))))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (cos lambda2) (+ (* lambda1 (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (+ (* -1/2 (* lambda1 (sin lambda2))) (* (pow phi2 2) (+ (* 1/24 (cos lambda2)) (* 1/24 (* lambda1 (sin lambda2)))))))))))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) #s(hole binary64 (+ 1 (+ (cos lambda2) (+ (* lambda1 (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (+ (* -1/2 (* lambda1 (sin lambda2))) (* (pow phi2 2) (+ (* 1/24 (cos lambda2)) (+ (* 1/24 (* lambda1 (sin lambda2))) (* (pow phi2 2) (+ (* -1/720 (cos lambda2)) (* -1/720 (* lambda1 (sin lambda2))))))))))))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (+ (cos lambda2) (+ (* lambda1 (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* -1/2 (* lambda1 (sin lambda2)))))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (+ (cos lambda2) (+ (* lambda1 (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (+ (* -1/2 (* lambda1 (sin lambda2))) (* (pow phi2 2) (+ (* 1/24 (cos lambda2)) (* 1/24 (* lambda1 (sin lambda2))))))))))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) #s(hole binary64 (+ (cos lambda2) (+ (* lambda1 (sin lambda2)) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (+ (* -1/2 (* lambda1 (sin lambda2))) (* (pow phi2 2) (+ (* 1/24 (cos lambda2)) (+ (* 1/24 (* lambda1 (sin lambda2))) (* (pow phi2 2) (+ (* -1/720 (cos lambda2)) (* -1/720 (* lambda1 (sin lambda2)))))))))))))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* 1/2 (* (pow phi2 2) (sin lambda2))))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow phi2 2) (+ (* -1/24 (* (pow phi2 2) (sin lambda2))) (* 1/2 (sin lambda2)))))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) #s(hole binary64 (+ (* -1 (sin lambda2)) (* (pow phi2 2) (+ (* 1/2 (sin lambda2)) (* (pow phi2 2) (+ (* -1/24 (sin lambda2)) (* 1/720 (* (pow phi2 2) (sin lambda2))))))))))
#s(approx (* (cos lambda2) (cos phi2)) #s(hole binary64 (+ (cos lambda2) (* -1/2 (* (pow phi2 2) (cos lambda2))))))
#s(approx (* (cos lambda2) (cos phi2)) #s(hole binary64 (+ (cos lambda2) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* 1/24 (* (pow phi2 2) (cos lambda2))))))))
#s(approx (* (cos lambda2) (cos phi2)) #s(hole binary64 (+ (cos lambda2) (* (pow phi2 2) (+ (* -1/2 (cos lambda2)) (* (pow phi2 2) (+ (* -1/720 (* (pow phi2 2) (cos lambda2))) (* 1/24 (cos lambda2)))))))))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) #s(hole binary64 (* -1/2 (pow phi2 2))))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) #s(hole binary64 (* (pow phi2 2) (- (/ 1 (pow phi2 2)) 1/2))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (* -1/720 (pow phi2 6))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (* (pow phi2 6) (- (* 1/24 (/ 1 (pow phi2 2))) 1/720))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (* (pow phi2 6) (- (* 1/24 (/ 1 (pow phi2 2))) (+ 1/720 (/ 1/2 (pow phi2 4)))))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) #s(hole binary64 (* (pow phi2 6) (- (+ (* 1/24 (/ 1 (pow phi2 2))) (+ (/ 1 (pow phi2 6)) (/ (cos phi1) (pow phi2 6)))) (+ 1/720 (/ 1/2 (pow phi2 4)))))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) #s(hole binary64 (* (pow phi2 6) (- (+ (* 1/24 (/ 1 (pow phi2 2))) (/ (cos phi1) (pow phi2 6))) (+ 1/720 (/ 1/2 (pow phi2 4)))))))
#s(approx (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) #s(hole binary64 (* -1/720 (pow phi2 4))))
#s(approx (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) #s(hole binary64 (* (pow phi2 4) (- (* 1/24 (/ 1 (pow phi2 2))) 1/720))))
#s(approx (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) #s(hole binary64 (* (pow phi2 4) (- (* 1/24 (/ 1 (pow phi2 2))) (+ 1/720 (/ 1/2 (pow phi2 4)))))))
#s(approx (+ (* (* phi2 phi2) -1/720) 1/24) #s(hole binary64 (* -1/720 (pow phi2 2))))
#s(approx (+ (* (* phi2 phi2) -1/720) 1/24) #s(hole binary64 (* (pow phi2 2) (- (* 1/24 (/ 1 (pow phi2 2))) 1/720))))
Outputs
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
lambda1
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))))
(*.f64 (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))) (cos.f64 phi2))
(sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 phi2))
(cos.f64 (fabs.f64 phi2))
(cos.f64 phi2)
phi2
(neg.f64 (-.f64 #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (neg.f64 #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (neg.f64 #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
(/.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 lambda1 lambda2))) #s(literal 2 binary64))
(sin.f64 lambda1)
(sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 lambda2)))
(cos.f64 (fabs.f64 lambda2))
(cos.f64 (fabs.f64 (neg.f64 lambda2)))
(cos.f64 (neg.f64 lambda2))
(cos.f64 lambda2)
lambda2
#s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))
(sin.f64 lambda2)
(-.f64 (cos.f64 phi1) (*.f64 (neg.f64 (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))
(-.f64 (cos.f64 phi1) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(sin.f64 (+.f64 phi1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 phi1))
(cos.f64 (fabs.f64 phi1))
(cos.f64 phi1)
phi1
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))
(/.f64 (+.f64 (cos.f64 (+.f64 (-.f64 lambda1 lambda2) phi2)) (cos.f64 (-.f64 (-.f64 lambda1 lambda2) phi2))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 phi2 (-.f64 lambda1 lambda2))) (cos.f64 (-.f64 phi2 (-.f64 lambda1 lambda2)))) #s(literal 2 binary64))
(fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 phi2)))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 phi2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (fabs.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(sin.f64 (+.f64 lambda1 (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (fabs.f64 lambda1))
(cos.f64 (neg.f64 lambda1))
(cos.f64 lambda1)
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(/.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) #s(literal 2 binary64))
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 phi2 phi2) #s(literal 1 binary64))
(fma.f64 phi2 (*.f64 phi2 #s(literal -1/2 binary64)) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) #s(literal -1 binary64))
(+.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(*.f64 (neg.f64 phi2) (neg.f64 phi2))
(*.f64 (fabs.f64 phi2) (fabs.f64 phi2))
(*.f64 phi2 phi2)
(pow.f64 (neg.f64 phi2) #s(literal 2 binary64))
(pow.f64 (fabs.f64 phi2) #s(literal 2 binary64))
(pow.f64 phi2 #s(literal 2 binary64))
(fabs.f64 (*.f64 phi2 phi2))
#s(literal -1/2 binary64)
#s(literal 1 binary64)
(neg.f64 (-.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))))
(sin.f64 (-.f64 lambda1 lambda2))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(neg.f64 (-.f64 lambda2 lambda1))
(-.f64 lambda1 (*.f64 #s(literal 1 binary64) lambda2))
(-.f64 lambda1 (neg.f64 (neg.f64 lambda2)))
(-.f64 lambda1 lambda2)
(+.f64 lambda1 (neg.f64 lambda2))
(-.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (neg.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))
(-.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))
#s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))
(fma.f64 (*.f64 phi1 phi1) #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1) #s(literal -1 binary64))
(+.f64 (*.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1) #s(literal 1 binary64))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64))
(*.f64 (neg.f64 phi1) (neg.f64 phi1))
(*.f64 (fabs.f64 phi1) (fabs.f64 phi1))
(*.f64 phi1 phi1)
(pow.f64 (neg.f64 phi1) #s(literal 2 binary64))
(pow.f64 (fabs.f64 phi1) #s(literal 2 binary64))
(pow.f64 phi1 #s(literal 2 binary64))
(fabs.f64 (*.f64 phi1 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))))
(*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (neg.f64 (sin.f64 lambda2))))
(cos.f64 (neg.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (fabs.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64))))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64))))
#s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))
(fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))
(fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))
(-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64))
(+.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal 1 binary64))
(+.f64 (*.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))
(fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1))
(fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) (cos.f64 phi1))
(fma.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1))
(-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2) (neg.f64 (cos.f64 phi1)))
(+.f64 (*.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2) (cos.f64 phi1))
(fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) phi2) phi2 #s(literal -1/2 binary64))
(fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64))
(fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64))
(-.f64 (*.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal 1/2 binary64))
(+.f64 (*.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64))) #s(literal -1/2 binary64))
(fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64))
(fma.f64 #s(literal -1/720 binary64) (*.f64 phi2 phi2) #s(literal 1/24 binary64))
(fma.f64 phi2 (*.f64 phi2 #s(literal -1/720 binary64)) #s(literal 1/24 binary64))
(-.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64)) #s(literal -1/24 binary64))
(+.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64)) #s(literal 1/24 binary64))
#s(literal -1/720 binary64)
#s(literal 1/24 binary64)
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))))
(*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
(neg.f64 (-.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))
(fma.f64 lambda1 (cos.f64 lambda2) (neg.f64 (sin.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (neg.f64 (sin.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2)))
(*.f64 #s(literal -1 binary64) (sin.f64 lambda2))
(*.f64 (sin.f64 lambda2) #s(literal -1 binary64))
(neg.f64 (sin.f64 lambda2))
(sin.f64 (+.f64 lambda2 (PI.f64)))
(sin.f64 (neg.f64 lambda2))
(cos.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))
(fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))
(fma.f64 (cos.f64 phi2) (cos.f64 lambda2) #s(literal 1 binary64))
(-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) #s(literal -1 binary64))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) #s(literal 1 binary64))
(-.f64 lambda1 (neg.f64 (atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))))))
(atan2.f64 (*.f64 #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))
(fma.f64 (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))
(fma.f64 (*.f64 (*.f64 (cos.f64 phi2) lambda1) (neg.f64 (sin.f64 lambda2))) #s(literal -1 binary64) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))
(fma.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)) (neg.f64 lambda1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))
(fma.f64 #s(literal -1 binary64) (*.f64 (*.f64 (cos.f64 phi2) lambda1) (neg.f64 (sin.f64 lambda2))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))
(fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))
(-.f64 (fma.f64 (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal -1 binary64))
(+.f64 (fma.f64 (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))
(+.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)) (neg.f64 lambda1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64)))
(fma.f64 (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(fma.f64 (*.f64 (*.f64 (cos.f64 phi2) lambda1) (neg.f64 (sin.f64 lambda2))) #s(literal -1 binary64) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(fma.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)) (neg.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(fma.f64 #s(literal -1 binary64) (*.f64 (*.f64 (cos.f64 phi2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)) (neg.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 phi2)) (cos.f64 lambda2)))
(-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)) (neg.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 phi2)))
(-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)) (neg.f64 lambda1)) (neg.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
(+.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)) (neg.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 #s(literal -1 binary64) lambda1)
(*.f64 lambda1 #s(literal -1 binary64))
(neg.f64 lambda1)
(*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(*.f64 (cos.f64 lambda2) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 lambda2))
(/.f64 (+.f64 (cos.f64 (+.f64 phi2 (neg.f64 lambda2))) (cos.f64 (-.f64 phi2 (neg.f64 lambda2)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 lambda2 phi2)) (cos.f64 (-.f64 lambda2 phi2))) #s(literal 2 binary64))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))
#s(approx lambda1 lambda1)
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) lambda1) (cos.f64 lambda2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (cos.f64 phi2) lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1)))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 phi2)) (sin.f64 lambda2))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (-.f64 (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) lambda1) #s(literal -1/2 binary64))) lambda1) (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (fma.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/6 binary64) (*.f64 (sin.f64 lambda2) #s(literal 1/2 binary64))) lambda1)) lambda1) (sin.f64 lambda2)))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (-.f64 (cos.f64 lambda2) (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 lambda2)))) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (fma.f64 (cos.f64 lambda2) #s(literal -1/6 binary64) (*.f64 (*.f64 (*.f64 lambda1 lambda1) (cos.f64 lambda2)) #s(literal 1/120 binary64))) (*.f64 lambda1 lambda1))) lambda1))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (fma.f64 #s(literal -1/6 binary64) (cos.f64 lambda2) (*.f64 (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 lambda1 lambda1)) (cos.f64 lambda2) (*.f64 #s(literal 1/120 binary64) (cos.f64 lambda2))) (*.f64 lambda1 lambda1))) (*.f64 lambda1 lambda1))) lambda1))
#s(approx (sin lambda1) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/6 binary64) (*.f64 lambda1 lambda1))) lambda1))
#s(approx (sin lambda1) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1) #s(literal -1/6 binary64)) (*.f64 lambda1 lambda1))) lambda1))
#s(approx (sin lambda1) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/120 binary64) (*.f64 #s(literal 1/5040 binary64) (*.f64 lambda1 lambda1))) (*.f64 lambda1 lambda1) #s(literal -1/6 binary64)) (*.f64 lambda1 lambda1))) lambda1))
#s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (-.f64 (sin.f64 lambda2) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)))))
#s(approx (* (cos lambda1) (sin lambda2)) (+.f64 (sin.f64 lambda2) (*.f64 (fma.f64 #s(literal -1/2 binary64) (sin.f64 lambda2) (*.f64 (*.f64 (*.f64 lambda1 lambda1) #s(literal 1/24 binary64)) (sin.f64 lambda2))) (*.f64 lambda1 lambda1))))
#s(approx (* (cos lambda1) (sin lambda2)) (+.f64 (sin.f64 lambda2) (*.f64 (fma.f64 #s(literal -1/2 binary64) (sin.f64 lambda2) (*.f64 (fma.f64 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)) #s(literal -1/720 binary64) (*.f64 (sin.f64 lambda2) #s(literal 1/24 binary64))) (*.f64 lambda1 lambda1))) (*.f64 lambda1 lambda1))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (fma.f64 (*.f64 (cos.f64 phi2) lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 phi2) lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (cos.f64 phi2) lambda1) (sin.f64 lambda2)))) lambda1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (cos.f64 phi2) lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 phi2) lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (cos.f64 phi2) lambda1) (sin.f64 lambda2)))) lambda1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (-.f64 (sin.f64 lambda2) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 lambda2) lambda1))) lambda1)))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (+.f64 (sin.f64 lambda2) (*.f64 (fma.f64 (cos.f64 lambda2) #s(literal -1/2 binary64) (*.f64 (*.f64 (sin.f64 lambda2) lambda1) #s(literal -1/6 binary64))) lambda1)) lambda1)))
#s(approx (cos lambda1) #s(literal 1 binary64))
#s(approx (cos lambda1) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 lambda1 lambda1))))
#s(approx (cos lambda1) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 lambda1 lambda1))))
#s(approx (cos lambda1) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 lambda1 lambda1))) (*.f64 lambda1 lambda1) #s(literal -1/2 binary64)) (*.f64 lambda1 lambda1))))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (sin.f64 lambda2) lambda1))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (-.f64 (sin.f64 lambda2) (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)))) lambda1))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (+.f64 (sin.f64 lambda2) (*.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 lambda2) (*.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 lambda1 lambda1)) (sin.f64 lambda2))) (*.f64 lambda1 lambda1))) lambda1))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (+.f64 (sin.f64 lambda2) (*.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 lambda2) (*.f64 (fma.f64 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 lambda2)) #s(literal -1/5040 binary64) (*.f64 (sin.f64 lambda2) #s(literal 1/120 binary64))) (*.f64 lambda1 lambda1))) (*.f64 lambda1 lambda1))) lambda1))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (*.f64 (cos.f64 phi2) lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 #s(literal -1/6 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1 (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (neg.f64 (sin.f64 lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (-.f64 (cos.f64 lambda2) (*.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1))) lambda1)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/6 binary64))) lambda1)) lambda1)))
#s(approx (- lambda1 lambda2) (neg.f64 lambda2))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (fma.f64 (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (fma.f64 (fma.f64 (neg.f64 (cos.f64 phi2)) (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (fma.f64 (fma.f64 (neg.f64 (cos.f64 phi2)) (neg.f64 (sin.f64 lambda2)) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)))) lambda1)) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (neg.f64 (cos.f64 phi2)) (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (neg.f64 (cos.f64 phi2)) (neg.f64 (sin.f64 lambda2)) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)))) lambda1)) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) lambda1)))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (-.f64 (*.f64 (fma.f64 (cos.f64 lambda2) #s(literal -1/2 binary64) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1) #s(literal 1/6 binary64))) lambda1) (neg.f64 (sin.f64 lambda2))) lambda1)))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 (neg.f64 (cos.f64 phi2)) (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 (neg.f64 (cos.f64 phi2)) (neg.f64 (sin.f64 lambda2)) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (cos.f64 lambda2) (*.f64 (*.f64 #s(literal 1/6 binary64) lambda1) (*.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2)))) lambda1)) lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi2) lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))
#s(approx (neg lambda1) (neg.f64 lambda1))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 #s(literal 1 binary64) (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) lambda1)) lambda1))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (* (sin lambda1) (cos lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)))
#s(approx (sin lambda1) (sin.f64 lambda1))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))
#s(approx (cos lambda1) (cos.f64 lambda1))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 #s(literal 1 binary64) (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) lambda1)) lambda1))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) (*.f64 (+.f64 #s(literal 1 binary64) (/.f64 (neg.f64 lambda2) lambda1)) lambda1))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (cos.f64 lambda2) (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) lambda1))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (*.f64 (*.f64 (cos.f64 phi2) lambda1) (sin.f64 lambda2)))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (*.f64 (fma.f64 (cos.f64 phi2) (sin.f64 lambda2) (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1)) lambda1))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) (*.f64 (fma.f64 (cos.f64 phi2) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (/.f64 (cos.f64 phi2) lambda1))) lambda1))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (neg.f64 lambda1) (-.f64 (neg.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) lambda1)) #s(literal 1 binary64))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (neg.f64 lambda1) (-.f64 (neg.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))) (cos.f64 phi2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (cos.f64 phi2)))) lambda1)) #s(literal 1 binary64))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))) (cos.f64 phi2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (cos.f64 phi2)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))) (cos.f64 phi2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 (-.f64 (neg.f64 lambda2) (neg.f64 lambda1))))
#s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (neg.f64 lambda1) (+.f64 (neg.f64 (cos.f64 lambda2)) (/.f64 (sin.f64 lambda2) lambda1))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (cos.f64 phi2))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (*.f64 (neg.f64 lambda1) (fma.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2) (neg.f64 (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1)))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) (*.f64 (neg.f64 lambda1) (fma.f64 (neg.f64 (cos.f64 phi2)) (sin.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda2) (/.f64 (cos.f64 phi2) lambda1))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) lambda2) (sin.f64 lambda1)) #s(literal -1/2 binary64))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (fma.f64 (neg.f64 (cos.f64 lambda1)) (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 phi2)) (sin.f64 lambda1) (*.f64 (*.f64 #s(literal 1/6 binary64) lambda2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) lambda2)) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/2 binary64)) (cos.f64 lambda1)) lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 (-.f64 (*.f64 (fma.f64 (sin.f64 lambda1) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal 1/6 binary64))) lambda2) (cos.f64 lambda1)) lambda2)))
#s(approx (* (sin lambda1) (cos lambda2)) (-.f64 (sin.f64 lambda1) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1)))))
#s(approx (* (sin lambda1) (cos lambda2)) (+.f64 (sin.f64 lambda1) (*.f64 (fma.f64 (sin.f64 lambda1) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/24 binary64)) (sin.f64 lambda1))) (*.f64 lambda2 lambda2))))
#s(approx (* (sin lambda1) (cos lambda2)) (+.f64 (sin.f64 lambda1) (*.f64 (fma.f64 (sin.f64 lambda1) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1)) #s(literal -1/720 binary64) (*.f64 (sin.f64 lambda1) #s(literal 1/24 binary64))) (*.f64 lambda2 lambda2))) (*.f64 lambda2 lambda2))))
#s(approx (cos lambda2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 lambda2 lambda2))))
#s(approx (cos lambda2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 lambda2 lambda2))))
#s(approx (cos lambda2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 lambda2 lambda2))) (*.f64 lambda2 lambda2) #s(literal -1/2 binary64)) (*.f64 lambda2 lambda2))))
#s(approx lambda2 lambda2)
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (cos.f64 lambda1) lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (-.f64 (cos.f64 lambda1) (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 lambda2 lambda2) (cos.f64 lambda1)))) lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 (fma.f64 (cos.f64 lambda1) #s(literal -1/6 binary64) (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 lambda1)) #s(literal 1/120 binary64))) (*.f64 lambda2 lambda2))) lambda2))
#s(approx (* (cos lambda1) (sin lambda2)) (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 (fma.f64 #s(literal -1/6 binary64) (cos.f64 lambda1) (*.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal -1/5040 binary64)) (cos.f64 lambda1) (*.f64 #s(literal 1/120 binary64) (cos.f64 lambda1))) (*.f64 lambda2 lambda2))) (*.f64 lambda2 lambda2))) lambda2))
#s(approx (sin lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/6 binary64))) lambda2))
#s(approx (sin lambda2) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 lambda2 lambda2))) lambda2))
#s(approx (sin lambda2) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/120 binary64) (*.f64 #s(literal 1/5040 binary64) (*.f64 lambda2 lambda2))) (*.f64 lambda2 lambda2) #s(literal -1/6 binary64)) (*.f64 lambda2 lambda2))) lambda2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (fma.f64 (*.f64 (cos.f64 phi2) lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda1) lambda2) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 lambda1)) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) lambda2) (sin.f64 lambda1)) #s(literal -1/6 binary64))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (cos.f64 phi2) lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda1) lambda2) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 lambda1)) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) lambda2) (sin.f64 lambda1)) #s(literal -1/6 binary64))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) lambda2)))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda1) (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 lambda1) lambda2))) lambda2)))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda1) (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (fma.f64 (cos.f64 lambda1) #s(literal -1/2 binary64) (*.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/6 binary64))) lambda2)) lambda2)))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (sin.f64 lambda1) lambda2))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1)))) lambda2))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 lambda1) (*.f64 (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/120 binary64)) (sin.f64 lambda1))) (*.f64 lambda2 lambda2))) lambda2))
#s(approx (* (sin lambda1) (sin lambda2)) (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 lambda1) (*.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 lambda1)) #s(literal -1/5040 binary64) (*.f64 (sin.f64 lambda1) #s(literal 1/120 binary64))) (*.f64 lambda2 lambda2))) (*.f64 lambda2 lambda2))) lambda2))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 (-.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 lambda1) lambda2))) lambda2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (+.f64 (sin.f64 lambda1) (*.f64 (+.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 (fma.f64 (sin.f64 lambda1) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal 1/6 binary64))) lambda2)) lambda2)))
#s(approx (- lambda1 lambda2) (-.f64 lambda1 lambda2))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda1) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) lambda2) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda1))) lambda2)))
#s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda1) (*.f64 (-.f64 (*.f64 (fma.f64 (cos.f64 lambda1) #s(literal -1/2 binary64) (*.f64 (*.f64 (sin.f64 lambda1) lambda2) #s(literal -1/6 binary64))) lambda2) (neg.f64 (sin.f64 lambda1))) lambda2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (-.f64 (cos.f64 phi2) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (+.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 phi2) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) #s(literal 1/24 binary64))) (*.f64 lambda2 lambda2)))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (+.f64 (cos.f64 phi2) (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (cos.f64 phi2))) (*.f64 lambda2 lambda2))) (*.f64 lambda2 lambda2)))))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2)))
#s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2)))
#s(approx (neg (sin lambda2)) (*.f64 (fma.f64 (*.f64 lambda2 lambda2) #s(literal 1/6 binary64) #s(literal -1 binary64)) lambda2))
#s(approx (neg (sin lambda2)) (*.f64 (fma.f64 (-.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 lambda2 lambda2) #s(literal 1/120 binary64))) (*.f64 lambda2 lambda2) #s(literal -1 binary64)) lambda2))
#s(approx (neg (sin lambda2)) (*.f64 (fma.f64 (+.f64 #s(literal 1/6 binary64) (*.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 lambda2 lambda2) #s(literal -1/120 binary64)) (*.f64 lambda2 lambda2))) (*.f64 lambda2 lambda2) #s(literal -1 binary64)) lambda2))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi2) lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 lambda1) lambda2) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 lambda1)) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) lambda2) (sin.f64 lambda1)) #s(literal -1/6 binary64))) lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (-.f64 (cos.f64 phi2) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 phi2)) (*.f64 (fma.f64 (cos.f64 phi2) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) #s(literal 1/24 binary64))) (*.f64 lambda2 lambda2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 phi2)) (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (cos.f64 phi2))) (*.f64 lambda2 lambda2))) (*.f64 lambda2 lambda2))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) lambda2) lambda1)))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 phi2)) (*.f64 (fma.f64 (*.f64 (cos.f64 phi2) lambda2) #s(literal -1/2 binary64) (*.f64 (cos.f64 phi2) lambda1)) lambda2)))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 phi2)) (*.f64 (fma.f64 (cos.f64 phi2) lambda1 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) lambda2) lambda1) #s(literal -1/6 binary64))) lambda2)) lambda2)))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) (cos.f64 phi2))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) (+.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) lambda2) lambda1)))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) (+.f64 (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 (cos.f64 phi2) lambda2) #s(literal -1/2 binary64) (*.f64 (cos.f64 phi2) lambda1)) lambda2)))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) (+.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 phi2) lambda1 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) lambda2) lambda1) #s(literal -1/6 binary64))) lambda2)) lambda2)))
#s(approx (* (neg (sin lambda2)) (cos phi2)) (*.f64 (neg.f64 lambda2) (cos.f64 phi2)))
#s(approx (* (neg (sin lambda2)) (cos phi2)) (*.f64 (-.f64 (neg.f64 (cos.f64 phi2)) (*.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)))) lambda2))
#s(approx (* (neg (sin lambda2)) (cos phi2)) (*.f64 (+.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (fma.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 lambda2 lambda2)) (cos.f64 phi2) (*.f64 #s(literal 1/6 binary64) (cos.f64 phi2))) (*.f64 lambda2 lambda2))) lambda2))
#s(approx (* (neg (sin lambda2)) (cos phi2)) (*.f64 (+.f64 (neg.f64 (cos.f64 phi2)) (*.f64 (fma.f64 #s(literal 1/6 binary64) (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 phi2) #s(literal -1/120 binary64) (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) #s(literal 1/5040 binary64))) (*.f64 lambda2 lambda2))) (*.f64 lambda2 lambda2))) lambda2))
#s(approx (* (cos lambda2) (cos phi2)) (-.f64 (cos.f64 phi2) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)))))
#s(approx (* (cos lambda2) (cos phi2)) (+.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 phi2) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) #s(literal 1/24 binary64))) (*.f64 lambda2 lambda2))))
#s(approx (* (cos lambda2) (cos phi2)) (+.f64 (cos.f64 phi2) (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 phi2) (*.f64 (fma.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) (cos.f64 phi2))) (*.f64 lambda2 lambda2))) (*.f64 lambda2 lambda2))))
#s(approx (- lambda1 lambda2) (*.f64 (-.f64 (/.f64 lambda1 lambda2) #s(literal 1 binary64)) lambda2))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))
#s(approx (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (sin.f64 (-.f64 lambda1 lambda2)))
#s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda2) (+.f64 #s(literal 1 binary64) (/.f64 (neg.f64 lambda1) lambda2))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
#s(approx (cos (- lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 phi1 phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi1 phi1))) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1)))))
#s(approx (cos phi1) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1))))
#s(approx (cos phi1) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 phi1 phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)))))
#s(approx (cos phi1) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi1 phi1))) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1))))
#s(approx phi1 phi1)
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 (*.f64 phi1 phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi1 phi1))) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1)))))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)))
#s(approx (* phi1 phi1) (*.f64 phi1 phi1))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (*.f64 (*.f64 phi1 phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi1 phi1))) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1)))))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (-.f64 (cos.f64 phi2) (*.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1)))))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 phi2)) (*.f64 (*.f64 phi1 phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)))))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 phi2)) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi1 phi1))) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (fma.f64 (*.f64 phi1 phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (fma.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi1 phi1))) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 phi1 phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) (+.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi1 phi1))) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))
#s(approx (cos phi1) (cos.f64 phi1))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (*.f64 (pow.f64 phi1 #s(literal 4 binary64)) #s(literal 1/24 binary64)))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (*.f64 (-.f64 #s(literal 1/24 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1))) (pow.f64 phi1 #s(literal 4 binary64))))
#s(approx (+ (* (+ (* (* phi1 phi1) 1/24) -1/2) (* phi1 phi1)) 1) (*.f64 (-.f64 (+.f64 #s(literal 1/24 binary64) (pow.f64 phi1 #s(literal -4 binary64))) (/.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1))) (pow.f64 phi1 #s(literal 4 binary64))))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) (*.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64)))
#s(approx (+ (* (* phi1 phi1) 1/24) -1/2) (*.f64 (-.f64 #s(literal 1/24 binary64) (/.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1))) (*.f64 phi1 phi1)))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 phi1)) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (-.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64))) (*.f64 phi2 phi2))) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (-.f64 (*.f64 (fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))))
#s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2))))
#s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2))))
#s(approx phi2 phi2)
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (-.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal 1/24 binary64))) (*.f64 phi2 phi2))))
#s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2))))
#s(approx (* phi2 phi2) (*.f64 phi2 phi2))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2))))
#s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2)))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2))))
#s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1)))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (-.f64 (cos.f64 phi1) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 phi2 phi2) (cos.f64 lambda2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (+.f64 (cos.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2)))))
#s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (+.f64 (cos.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 lambda2)) #s(literal -1/720 binary64) (*.f64 (cos.f64 lambda2) #s(literal 1/24 binary64))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2)))))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi1)))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (-.f64 (cos.f64 phi1) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))))
#s(approx (+ (cos phi1) (cos phi2)) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 phi1)) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) (-.f64 (cos.f64 phi1) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2))))
#s(approx (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)))
#s(approx (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)))
#s(approx (+ (* (* phi2 phi2) -1/720) 1/24) #s(literal 1/24 binary64))
#s(approx (+ (* (* phi2 phi2) -1/720) 1/24) (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (cos.f64 (-.f64 lambda1 lambda2))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 phi2)))))
#s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda1 lambda2))) #s(literal -1/720 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2)))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (cos.f64 lambda2)))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) (+.f64 #s(literal 1 binary64) (-.f64 (cos.f64 lambda2) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 phi2 phi2) (cos.f64 lambda2))))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 lambda2)) (*.f64 (fma.f64 (cos.f64 lambda2) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2))))
#s(approx (+ (* (cos lambda2) (cos phi2)) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 lambda2)) (*.f64 (fma.f64 (cos.f64 lambda2) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 lambda2)) #s(literal -1/720 binary64) (*.f64 (cos.f64 lambda2) #s(literal 1/24 binary64))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) lambda1)))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (*.f64 (*.f64 #s(literal -1/2 binary64) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi2 phi2)))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (*.f64 (fma.f64 #s(literal -1/2 binary64) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (*.f64 (*.f64 #s(literal 1/24 binary64) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2)))))
#s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 lambda2)) (fma.f64 (sin.f64 lambda2) lambda1 (*.f64 (fma.f64 #s(literal -1/2 binary64) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (*.f64 (fma.f64 #s(literal 1/24 binary64) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (*.f64 (*.f64 #s(literal -1/720 binary64) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2)))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) (+.f64 (cos.f64 lambda2) (fma.f64 (sin.f64 lambda2) lambda1 (*.f64 (*.f64 #s(literal -1/2 binary64) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi2 phi2)))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) (+.f64 (cos.f64 lambda2) (fma.f64 (sin.f64 lambda2) lambda1 (*.f64 (fma.f64 #s(literal -1/2 binary64) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (*.f64 (*.f64 #s(literal 1/24 binary64) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2)))))
#s(approx (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) (+.f64 (cos.f64 lambda2) (fma.f64 (sin.f64 lambda2) lambda1 (*.f64 (fma.f64 #s(literal -1/2 binary64) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (*.f64 (fma.f64 #s(literal 1/24 binary64) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (*.f64 (*.f64 #s(literal -1/720 binary64) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2)))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) (-.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 phi2 phi2) (sin.f64 lambda2)))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (sin.f64 lambda2)) #s(literal -1/24 binary64) (*.f64 (sin.f64 lambda2) #s(literal 1/2 binary64))) (*.f64 phi2 phi2))))
#s(approx (* (neg (sin lambda2)) (cos phi2)) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (fma.f64 #s(literal 1/2 binary64) (sin.f64 lambda2) (*.f64 (fma.f64 #s(literal -1/24 binary64) (sin.f64 lambda2) (*.f64 (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2)) (sin.f64 lambda2))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2))))
#s(approx (* (cos lambda2) (cos phi2)) (-.f64 (cos.f64 lambda2) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 phi2 phi2) (cos.f64 lambda2)))))
#s(approx (* (cos lambda2) (cos phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (fma.f64 (cos.f64 lambda2) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 lambda2)) #s(literal 1/24 binary64))) (*.f64 phi2 phi2))))
#s(approx (* (cos lambda2) (cos phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (fma.f64 (cos.f64 lambda2) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (*.f64 phi2 phi2) (cos.f64 lambda2)) #s(literal -1/720 binary64) (*.f64 (cos.f64 lambda2) #s(literal 1/24 binary64))) (*.f64 phi2 phi2))) (*.f64 phi2 phi2))))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))
#s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi2 phi2)) #s(literal 1/2 binary64)) (*.f64 phi2 phi2)))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64)))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (-.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 phi2 phi2)) #s(literal 1/720 binary64)) (pow.f64 phi2 #s(literal 6 binary64))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 phi2 phi2)) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/2 binary64) (pow.f64 phi2 #s(literal 4 binary64)))) (pow.f64 phi2 #s(literal 6 binary64))))
#s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (+.f64 (-.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 phi2 phi2)) #s(literal 1/720 binary64)) (-.f64 (/.f64 (+.f64 #s(literal 1 binary64) (cos.f64 phi1)) (pow.f64 phi2 #s(literal 6 binary64))) (/.f64 #s(literal 1/2 binary64) (pow.f64 phi2 #s(literal 4 binary64))))) (pow.f64 phi2 #s(literal 6 binary64))))
#s(approx (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) (*.f64 (+.f64 (-.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 phi2 phi2)) #s(literal 1/720 binary64)) (-.f64 (*.f64 (cos.f64 phi1) (pow.f64 phi2 #s(literal -6 binary64))) (/.f64 #s(literal 1/2 binary64) (pow.f64 phi2 #s(literal 4 binary64))))) (pow.f64 phi2 #s(literal 6 binary64))))
#s(approx (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (*.f64 (pow.f64 phi2 #s(literal 4 binary64)) #s(literal -1/720 binary64)))
#s(approx (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (*.f64 (pow.f64 phi2 #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 phi2 phi2)) #s(literal 1/720 binary64))))
#s(approx (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 phi2 phi2)) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/2 binary64) (pow.f64 phi2 #s(literal 4 binary64)))) (pow.f64 phi2 #s(literal 4 binary64))))
#s(approx (+ (* (* phi2 phi2) -1/720) 1/24) (*.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64)))
#s(approx (+ (* (* phi2 phi2) -1/720) 1/24) (*.f64 (-.f64 (/.f64 #s(literal 1/24 binary64) (*.f64 phi2 phi2)) #s(literal 1/720 binary64)) (*.f64 phi2 phi2)))

eval179.0ms (1.4%)

Memory
-15.8MiB live, 173.1MiB allocated; 39ms collecting garbage
Compiler

Compiled 9 000 to 3 628 computations (59.7% saved)

prune96.0ms (0.7%)

Memory
-6.7MiB live, 182.3MiB allocated; 21ms collecting garbage
Pruning

65 alts after pruning (63 fresh and 2 done)

PrunedKeptTotal
New52121542
Fresh94251
Picked505
Done022
Total53565600
Accuracy
99.9%
Counts
600 → 65
Alt Table
Click to see full alt table
StatusAccuracyProgram
82.4%
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
72.6%
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
72.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
71.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
70.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
75.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64)))))
99.6%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
81.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
85.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
81.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda1) (cos.f64 phi2) (cos.f64 phi1)))))
82.2%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
81.6%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 phi1)))))
81.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda1 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2))) (cos.f64 phi1)))))
76.2%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64))))))))
72.8%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1 binary64))))))
98.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
85.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
83.1%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))
98.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2)))))))
98.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
85.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
56.8%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
83.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
82.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
80.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
81.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
74.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
77.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64)))))))))
68.6%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
70.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
72.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
69.1%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
63.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
78.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
87.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
69.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
82.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
98.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
56.2%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (sin.f64 (+.f64 lambda2 (PI.f64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (sin.f64 (+.f64 lambda2 (PI.f64))) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))))
98.7%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
98.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
83.1%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 phi2) #s(literal 1 binary64)))))
81.5%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
72.6%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) lambda1)))))))
83.1%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi2) lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))))))
83.1%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (*.f64 (fma.f64 (cos.f64 phi2) (sin.f64 lambda2) (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1)) lambda1))))))
70.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
70.0%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
98.4%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
82.9%
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (cos.f64 lambda2) (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
69.6%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
68.6%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
72.1%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
72.6%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
82.1%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
71.5%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))))))
75.5%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
67.3%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
82.2%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
71.4%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
68.2%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
58.7%
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
68.6%
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
63.0%
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
98.7%
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
Compiler

Compiled 3 715 to 2 569 computations (30.8% saved)

regimes217.0ms (1.6%)

Memory
16.2MiB live, 352.7MiB allocated; 53ms collecting garbage
Counts
109 → 1
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) lambda1)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (cos.f64 lambda2) (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 lambda2 lambda1)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 lambda2 lambda1)) lambda1)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi2) lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (*.f64 (fma.f64 (cos.f64 phi2) (sin.f64 lambda2) (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1)) lambda1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (sin.f64 (+.f64 lambda2 (PI.f64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (sin.f64 (+.f64 lambda2 (PI.f64))) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda1) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) #s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda1 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2))) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda1 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
Calls

7 calls:

47.0ms
(cos.f64 phi2)
29.0ms
phi1
28.0ms
phi2
27.0ms
lambda1
27.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Results
AccuracySegmentsBranch
99.6%1(cos.f64 phi1)
99.6%1(cos.f64 phi2)
99.6%1(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
99.6%1lambda1
99.6%1lambda2
99.6%1phi1
99.6%1phi2
Compiler

Compiled 24 to 40 computations (-66.7% saved)

regimes194.0ms (1.5%)

Memory
-5.5MiB live, 277.0MiB allocated; 16ms collecting garbage
Counts
108 → 1
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) lambda1)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (cos.f64 lambda2) (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 lambda2 lambda1)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 lambda2 lambda1)) lambda1)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi2) lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (*.f64 (fma.f64 (cos.f64 phi2) (sin.f64 lambda2) (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1)) lambda1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (sin.f64 (+.f64 lambda2 (PI.f64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (sin.f64 (+.f64 lambda2 (PI.f64))) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda1) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) #s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda1 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2))) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda1 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
Calls

7 calls:

29.0ms
(cos.f64 phi2)
28.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
27.0ms
lambda1
27.0ms
phi1
27.0ms
phi2
Results
AccuracySegmentsBranch
99.2%1(cos.f64 phi2)
99.2%1lambda1
99.2%1lambda2
99.2%1(cos.f64 phi1)
99.2%1(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
99.2%1phi1
99.2%1phi2
Compiler

Compiled 24 to 40 computations (-66.7% saved)

regimes230.0ms (1.7%)

Memory
23.4MiB live, 212.5MiB allocated; 13ms collecting garbage
Counts
104 → 1
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) lambda1)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (cos.f64 lambda2) (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 lambda2 lambda1)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 lambda2 lambda1)) lambda1)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi2) lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (*.f64 (fma.f64 (cos.f64 phi2) (sin.f64 lambda2) (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1)) lambda1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (sin.f64 (+.f64 lambda2 (PI.f64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (sin.f64 (+.f64 lambda2 (PI.f64))) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda1) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) #s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda1 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2))) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 #s(approx (sin lambda1) (*.f64 (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/6 binary64) #s(literal 1 binary64)) lambda1)) (sin.f64 lambda2)))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 #s(approx (cos lambda1) (fma.f64 (*.f64 lambda1 lambda1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
Calls

7 calls:

49.0ms
lambda2
39.0ms
(cos.f64 phi2)
30.0ms
phi2
30.0ms
(cos.f64 phi1)
25.0ms
lambda1
Results
AccuracySegmentsBranch
98.9%1phi2
98.9%1(cos.f64 phi1)
98.9%1(cos.f64 phi2)
98.9%1(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
98.9%1lambda1
98.9%1lambda2
98.9%1phi1
Compiler

Compiled 24 to 40 computations (-66.7% saved)

regimes276.0ms (2.1%)

Memory
7.5MiB live, 396.2MiB allocated; 141ms collecting garbage
Counts
102 → 1
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) lambda1)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (cos.f64 lambda2) (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 lambda2 lambda1)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 lambda2 lambda1)) lambda1)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi2) lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (*.f64 (fma.f64 (cos.f64 phi2) (sin.f64 lambda2) (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1)) lambda1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (sin.f64 (+.f64 lambda2 (PI.f64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (sin.f64 (+.f64 lambda2 (PI.f64))) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda1) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) #s(approx (* (cos phi2) (cos (- lambda1 lambda2))) (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (fma.f64 (sin.f64 phi1) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64))) (-.f64 lambda1 lambda2)))) #s(literal 2 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 lambda1 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2))) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

7 calls:

76.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
46.0ms
phi2
42.0ms
phi1
28.0ms
lambda2
27.0ms
lambda1
Results
AccuracySegmentsBranch
98.8%1(cos.f64 phi1)
98.8%1(cos.f64 phi2)
98.8%1(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
98.8%1lambda1
98.8%1lambda2
98.8%1phi1
98.8%1phi2
Compiler

Compiled 24 to 40 computations (-66.7% saved)

regimes826.0ms (6.3%)

Memory
-247.3MiB live, 466.1MiB allocated; 1.1s collecting garbage
Counts
92 → 1
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) lambda1)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (cos.f64 lambda2) (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 lambda2 lambda1)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 lambda2 lambda1)) lambda1)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (cos.f64 phi2) lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (*.f64 (fma.f64 (cos.f64 phi2) (sin.f64 lambda2) (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) lambda1)) lambda1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (sin.f64 (+.f64 lambda2 (PI.f64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (+.f64 (fma.f64 (neg.f64 lambda1) (*.f64 (sin.f64 (+.f64 lambda2 (PI.f64))) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (-.f64 lambda1 lambda2) phi1) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda1) (cos.f64 phi2) (cos.f64 phi1)))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

7 calls:

659.0ms
(cos.f64 phi1)
32.0ms
(cos.f64 phi2)
29.0ms
phi2
25.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
25.0ms
phi1
Results
AccuracySegmentsBranch
98.8%1(cos.f64 phi1)
98.8%1(cos.f64 phi2)
98.8%1phi1
98.8%1phi2
98.8%1(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
98.8%1lambda1
98.8%1lambda2
Compiler

Compiled 24 to 40 computations (-66.7% saved)

regimes199.0ms (1.5%)

Memory
-59.7MiB live, 263.8MiB allocated; 72ms collecting garbage
Counts
81 → 1
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) #s(approx (+ (+ (* (neg lambda1) (* (neg (sin lambda2)) (cos phi2))) (* (cos lambda2) (cos phi2))) 1) (+.f64 (+.f64 #s(literal 1 binary64) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) lambda1)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (cos.f64 lambda2) (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (*.f64 (+.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) lambda1) #s(literal 1 binary64)) lambda1))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 lambda2 lambda1)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 #s(approx (- lambda1 lambda2) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 lambda2 lambda1)) lambda1)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) #s(approx (* (cos lambda1) (sin lambda2)) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (cos (- lambda1 lambda2)) (cos phi1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (*.f64 (+.f64 (/.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)) lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (sin.f64 (+.f64 lambda2 (/.f64 (PI.f64) #s(literal 2 binary64)))) lambda1 (neg.f64 (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

7 calls:

43.0ms
phi2
41.0ms
lambda1
26.0ms
phi1
25.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
20.0ms
lambda2
Results
AccuracySegmentsBranch
98.7%1(cos.f64 phi1)
98.7%1(cos.f64 phi2)
98.7%1(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
98.7%1lambda1
98.7%1lambda2
98.7%1phi1
98.7%1phi2
Compiler

Compiled 24 to 40 computations (-66.7% saved)

regimes108.0ms (0.8%)

Memory
26.3MiB live, 217.7MiB allocated; 10ms collecting garbage
Counts
58 → 1
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (sin.f64 lambda1))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2))) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
Calls

7 calls:

17.0ms
lambda1
16.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
15.0ms
phi2
15.0ms
(cos.f64 phi1)
14.0ms
lambda2
Results
AccuracySegmentsBranch
98.4%1(cos.f64 phi1)
98.4%1(cos.f64 phi2)
98.4%1(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
98.4%1lambda2
98.4%1phi2
98.4%1lambda1
98.4%1phi1
Compiler

Compiled 24 to 40 computations (-66.7% saved)

regimes111.0ms (0.8%)

Memory
-17.4MiB live, 221.5MiB allocated; 22ms collecting garbage
Counts
54 → 3
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
#s(approx (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1)))))
Calls

7 calls:

17.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
17.0ms
(cos.f64 phi1)
16.0ms
(cos.f64 phi2)
15.0ms
phi2
15.0ms
lambda1
Results
AccuracySegmentsBranch
93.9%2(cos.f64 phi1)
94.6%2(cos.f64 phi2)
98.5%3lambda2
96.9%3(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
91.7%3lambda1
93.9%2phi1
94.7%2phi2
Compiler

Compiled 24 to 40 computations (-66.7% saved)

regimes47.0ms (0.4%)

Memory
14.4MiB live, 106.8MiB allocated; 7ms collecting garbage
Counts
52 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

3 calls:

16.0ms
lambda2
16.0ms
phi2
13.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Results
AccuracySegmentsBranch
94.7%2phi2
92.7%4(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
92.0%3lambda2
Compiler

Compiled 18 to 22 computations (-22.2% saved)

regimes18.0ms (0.1%)

Memory
-8.6MiB live, 37.6MiB allocated; 3ms collecting garbage
Counts
49 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (/.f64 (+.f64 phi1 phi2) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 phi1 phi2) #s(literal 2 binary64)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(approx (+ (* (* phi1 phi1) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 phi1 phi1)) #s(literal 1/2 binary64)) (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

1 calls:

15.0ms
phi2
Results
AccuracySegmentsBranch
94.7%2phi2
Compiler

Compiled 1 to 4 computations (-300% saved)

regimes55.0ms (0.4%)

Memory
-14.8MiB live, 88.9MiB allocated; 27ms collecting garbage
Counts
45 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) #s(literal 1 binary64)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (*.f64 (neg.f64 lambda1) (-.f64 (/.f64 lambda2 lambda1) #s(literal 1 binary64)))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (fma.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (- (* (sin lambda1) (cos lambda2)) (* (cos lambda1) (sin lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))))))))
Outputs
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) #s(literal 1 binary64)))))
Calls

3 calls:

28.0ms
(cos.f64 phi2)
13.0ms
(cos.f64 phi1)
11.0ms
phi2
Results
AccuracySegmentsBranch
93.9%2(cos.f64 phi1)
91.8%2(cos.f64 phi2)
91.8%2phi2
Compiler

Compiled 5 to 14 computations (-180% saved)

regimes24.0ms (0.2%)

Memory
8.8MiB live, 55.3MiB allocated; 3ms collecting garbage
Counts
39 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
Outputs
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
Calls

2 calls:

12.0ms
phi1
9.0ms
(cos.f64 phi1)
Results
AccuracySegmentsBranch
93.8%2phi1
93.8%2(cos.f64 phi1)
Compiler

Compiled 3 to 9 computations (-200% saved)

regimes68.0ms (0.5%)

Memory
67.0MiB live, 124.1MiB allocated; 10ms collecting garbage
Counts
36 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 #s(approx (* (cos phi2) (sin (- lambda1 lambda2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
Calls

4 calls:

32.0ms
phi1
15.0ms
(cos.f64 phi2)
9.0ms
phi2
8.0ms
(cos.f64 phi1)
Results
AccuracySegmentsBranch
91.8%2phi2
91.8%2(cos.f64 phi2)
85.3%2phi1
84.2%2(cos.f64 phi1)
Compiler

Compiled 6 to 18 computations (-200% saved)

regimes110.0ms (0.8%)

Memory
24.8MiB live, 100.5MiB allocated; 30ms collecting garbage
Counts
34 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (-.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 phi2 phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal -1/2 binary64)) phi2) phi2 (cos.f64 phi1)) #s(literal -1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) (/.f64 (PI.f64) #s(literal 2 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (+.f64 phi2 (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 lambda2) (cos.f64 phi1))))))
Outputs
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi1))) lambda1)
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
Calls

4 calls:

72.0ms
lambda2
18.0ms
phi2
9.0ms
lambda1
8.0ms
(cos.f64 phi2)
Results
AccuracySegmentsBranch
82.4%1lambda1
86.7%3lambda2
89.7%2(cos.f64 phi2)
89.7%2phi2
Compiler

Compiled 5 to 17 computations (-240% saved)

regimes34.0ms (0.3%)

Memory
-5.1MiB live, 39.4MiB allocated; 13ms collecting garbage
Counts
25 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) lambda2 (*.f64 #s(literal -1/2 binary64) lambda1)) lambda2 #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(approx (cos (- lambda1 lambda2)) (cos.f64 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
Calls

3 calls:

19.0ms
phi2
7.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
6.0ms
(cos.f64 phi2)
Results
AccuracySegmentsBranch
85.8%3(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
89.5%2(cos.f64 phi2)
89.5%2phi2
Compiler

Compiled 19 to 23 computations (-21.1% saved)

regimes76.0ms (0.6%)

Memory
-11.3MiB live, 48.3MiB allocated; 33ms collecting garbage
Counts
23 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) lambda1 (*.f64 #s(literal 1/6 binary64) lambda2)) lambda2 #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
Calls

5 calls:

49.0ms
(cos.f64 phi2)
6.0ms
phi2
6.0ms
phi1
6.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
6.0ms
lambda2
Results
AccuracySegmentsBranch
85.8%4(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
85.4%3lambda2
81.8%3phi1
84.1%2(cos.f64 phi2)
84.2%2phi2
Compiler

Compiled 21 to 31 computations (-47.6% saved)

regimes42.0ms (0.3%)

Memory
-25.7MiB live, 69.1MiB allocated; 8ms collecting garbage
Counts
21 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (+.f64 lambda1 (*.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2))))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos (- lambda1 lambda2)) (cos phi2)) 1) (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) #s(literal 1 binary64))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) #s(approx (sin (- lambda1 lambda2)) #s(approx (+ (* (cos lambda2) lambda1) (neg (sin lambda2))) (fma.f64 (fma.f64 (*.f64 lambda2 lambda1) #s(literal -1/2 binary64) #s(literal -1 binary64)) lambda2 lambda1)))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) #s(literal 1 binary64)))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

6 calls:

10.0ms
(cos.f64 phi1)
8.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
6.0ms
lambda2
6.0ms
phi2
6.0ms
lambda1
Results
AccuracySegmentsBranch
79.5%3(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
79.2%3lambda2
76.4%2lambda1
80.3%2(cos.f64 phi2)
78.2%2(cos.f64 phi1)
80.3%2phi2
Compiler

Compiled 23 to 36 computations (-56.5% saved)

regimes9.0ms (0.1%)

Memory
19.8MiB live, 19.8MiB allocated; 0ms collecting garbage
Counts
15 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi1 phi1) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

2 calls:

4.0ms
phi1
4.0ms
(cos.f64 phi2)
Results
AccuracySegmentsBranch
79.9%3phi1
80.3%2(cos.f64 phi2)
Compiler

Compiled 3 to 9 computations (-200% saved)

regimes5.0ms (0%)

Memory
9.7MiB live, 9.7MiB allocated; 0ms collecting garbage
Counts
14 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 phi1 phi1) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
Calls

1 calls:

4.0ms
(cos.f64 phi2)
Results
AccuracySegmentsBranch
80.3%2(cos.f64 phi2)
Compiler

Compiled 2 to 5 computations (-150% saved)

regimes12.0ms (0.1%)

Memory
-25.5MiB live, 21.8MiB allocated; 1ms collecting garbage
Counts
12 → 3
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 (fma.f64 (*.f64 phi1 phi1) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 phi2 phi2)))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) (cos.f64 phi1)) #s(literal 1 binary64)))))))
Calls

3 calls:

4.0ms
phi2
4.0ms
phi1
3.0ms
(cos.f64 phi2)
Results
AccuracySegmentsBranch
79.9%3phi1
77.6%2phi2
77.5%2(cos.f64 phi2)
Compiler

Compiled 4 to 13 computations (-225% saved)

regimes10.0ms (0.1%)

Memory
20.5MiB live, 20.5MiB allocated; 0ms collecting garbage
Counts
9 → 3
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 (cos.f64 phi1) #s(literal 1 binary64)))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) (+.f64 #s(literal 1 binary64) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
Calls

3 calls:

3.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
3.0ms
phi1
3.0ms
(cos.f64 phi1)
Results
AccuracySegmentsBranch
79.5%3(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
75.8%2(cos.f64 phi1)
79.1%3phi1
Compiler

Compiled 19 to 23 computations (-21.1% saved)

regimes20.0ms (0.2%)

Memory
-12.9MiB live, 36.1MiB allocated; 7ms collecting garbage
Counts
7 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) (+.f64 (cos.f64 phi1) #s(approx (cos phi2) (fma.f64 (fma.f64 (*.f64 phi2 phi2) #s(literal 1/24 binary64) #s(literal -1/2 binary64)) (*.f64 phi2 phi2) #s(literal 1 binary64))))))))
Calls

6 calls:

7.0ms
phi2
3.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
2.0ms
phi1
2.0ms
lambda2
2.0ms
lambda1
Results
AccuracySegmentsBranch
74.5%2lambda1
76.0%2phi1
74.2%2(cos.f64 phi2)
74.3%2phi2
75.5%3lambda2
76.7%3(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Compiler

Compiled 22 to 35 computations (-59.1% saved)

regimes10.0ms (0.1%)

Memory
21.1MiB live, 21.1MiB allocated; 0ms collecting garbage
Counts
6 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (+.f64 #s(approx (cos phi1) (fma.f64 (*.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) phi1) phi1 #s(literal 1 binary64))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
Calls

4 calls:

2.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
2.0ms
phi1
2.0ms
lambda1
2.0ms
(cos.f64 phi1)
Results
AccuracySegmentsBranch
72.0%1lambda1
72.0%1(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
74.3%2(cos.f64 phi1)
74.4%2phi1
Compiler

Compiled 20 to 27 computations (-35% saved)

regimes14.0ms (0.1%)

Memory
-17.8MiB live, 29.1MiB allocated; 2ms collecting garbage
Counts
4 → 3
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) (fma.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64) #s(literal 1 binary64))) (cos.f64 #s(approx (- lambda1 lambda2) (neg.f64 lambda2)))))))
Calls

7 calls:

3.0ms
phi2
2.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
2.0ms
phi1
2.0ms
lambda2
2.0ms
lambda1
Results
AccuracySegmentsBranch
72.9%3(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
69.1%1lambda1
73.3%3lambda2
71.0%2(cos.f64 phi2)
71.2%2(cos.f64 phi1)
71.1%2phi2
71.6%2phi1
Compiler

Compiled 24 to 40 computations (-66.7% saved)

regimes9.0ms (0.1%)

Memory
23.0MiB live, 23.0MiB allocated; 0ms collecting garbage
Counts
3 → 1
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
(+.f64 lambda1 (atan2.f64 (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 #s(approx (cos phi1) (fma.f64 #s(approx (+ (* (* phi1 phi1) 1/24) -1/2) #s(literal -1/2 binary64)) (*.f64 phi1 phi1) #s(literal 1 binary64))) (*.f64 #s(approx (cos phi2) #s(approx (+ (* (* phi2 phi2) -1/2) 1) (*.f64 (*.f64 phi2 phi2) #s(literal -1/2 binary64)))) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (+.f64 #s(literal 2 binary64) (*.f64 (fma.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 phi2 phi2))) (*.f64 phi2 phi2) #s(literal -1/2 binary64)) (*.f64 phi2 phi2)))))))))
Calls

6 calls:

2.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
1.0ms
lambda2
1.0ms
phi1
1.0ms
phi2
1.0ms
(cos.f64 phi2)
Results
AccuracySegmentsBranch
69.1%1(cos.f64 phi2)
69.1%1phi2
69.1%1(cos.f64 phi1)
69.1%1(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
69.1%1phi1
69.1%1lambda2
Compiler

Compiled 23 to 36 computations (-56.5% saved)

regimes9.0ms (0.1%)

Memory
-26.8MiB live, 19.2MiB allocated; 4ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) #s(approx (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) #s(approx (+ (* (cos lambda2) (cos phi2)) (cos phi1)) #s(approx (+ (cos phi1) (cos phi2)) #s(approx (+ (+ (* (+ (* (+ (* (* phi2 phi2) -1/720) 1/24) (* phi2 phi2)) -1/2) (* phi2 phi2)) (cos phi1)) 1) (*.f64 (pow.f64 phi2 #s(literal 6 binary64)) #s(literal -1/720 binary64))))))))
Calls

7 calls:

3.0ms
phi2
1.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
1.0ms
phi1
1.0ms
lambda2
1.0ms
lambda1
Results
AccuracySegmentsBranch
63.0%1(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
63.0%1lambda1
63.0%1(cos.f64 phi2)
63.0%1lambda2
63.0%1phi1
63.0%1phi2
63.0%1(cos.f64 phi1)
Compiler

Compiled 24 to 40 computations (-66.7% saved)

bsearch125.0ms (0.9%)

Memory
-10.1MiB live, 83.3MiB allocated; 48ms collecting garbage
Algorithm
binary-search
Stop Event
predicate-same
narrow-enough
Steps
TimeLeftRight
17.0ms
1.0205849251729363e-51
5.677692102468708e-49
61.0ms
-120311359358.63403
-0.4457046209775204
Samples
49.0ms79×1valid
20.0ms145×0valid
Compiler

Compiled 793 to 735 computations (7.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 62.0ms
ival-cos: 38.0ms (61.6% of total)
ival-sin: 9.0ms (14.6% of total)
adjust: 4.0ms (6.5% of total)
ival-add!: 4.0ms (6.5% of total)
ival-mult!: 3.0ms (4.9% of total)
ival-atan2: 3.0ms (4.9% of total)
ival-sub!: 1.0ms (1.6% of total)

bsearch36.0ms (0.3%)

Memory
23.0MiB live, 23.0MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
33.0ms
1.7174071039091756
110.25630150176649
Samples
19.0ms30×1valid
10.0ms82×0valid
Compiler

Compiled 408 to 329 computations (19.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 25.0ms
ival-cos: 15.0ms (60.8% of total)
ival-atan2: 3.0ms (12.2% of total)
ival-sin: 3.0ms (12.2% of total)
adjust: 1.0ms (4.1% of total)
ival-add!: 1.0ms (4.1% of total)
ival-mult!: 1.0ms (4.1% of total)
ival-sub!: 0.0ms (0% of total)

bsearch2.0ms (0%)

Memory
1.6MiB live, 1.6MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
1.7174071039091756
110.25630150176649
Compiler

Compiled 317 to 315 computations (0.6% saved)

bsearch1.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9992416311607859
0.9995195152691707
Compiler

Compiled 23 to 21 computations (8.7% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9992416311607859
0.9995195152691707
Compiler

Compiled 23 to 21 computations (8.7% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9982022231633549
0.9991005217226542
Compiler

Compiled 22 to 21 computations (4.5% saved)

bsearch2.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
1.7174071039091756
110.25630150176649
Compiler

Compiled 401 to 350 computations (12.7% saved)

bsearch2.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
1.7174071039091756
110.25630150176649
Compiler

Compiled 422 to 378 computations (10.4% saved)

bsearch2.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
1.7174071039091756
110.25630150176649
Compiler

Compiled 436 to 371 computations (14.9% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9960416478234709
0.9964463385822218
Compiler

Compiled 22 to 21 computations (4.5% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9991005217226542
0.9995316895628911
Compiler

Compiled 22 to 21 computations (4.5% saved)

bsearch0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9991005217226542
0.9995316895628911
Compiler

Compiled 22 to 21 computations (4.5% saved)

bsearch108.0ms (0.8%)

Memory
9.2MiB live, 102.2MiB allocated; 9ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
68.0ms
271826.08767457586
116663790875.09073
36.0ms
2.779964962770349e-156
3.8355891956031066e-156
Samples
85.0ms117×1valid
9.0ms75×0valid
Compiler

Compiled 905 to 780 computations (13.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 88.0ms
ival-cos: 60.0ms (68.4% of total)
ival-sin: 11.0ms (12.5% of total)
adjust: 6.0ms (6.8% of total)
ival-atan2: 5.0ms (5.7% of total)
ival-mult!: 3.0ms (3.4% of total)
ival-add!: 1.0ms (1.1% of total)
ival-sub!: 1.0ms (1.1% of total)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.221493203103251e-11
0.06544339274943216
0.0ms
-0.8471700512294097
-0.8322503373585959
Compiler

Compiled 19 to 21 computations (-10.5% saved)

bsearch74.0ms (0.6%)

Memory
-3.5MiB live, 91.1MiB allocated; 14ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
72.0ms
4.1395622724961926e+123
3.786411107961477e+127
Samples
60.0ms87×1valid
5.0ms41×0valid
Compiler

Compiled 599 to 493 computations (17.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 61.0ms
ival-cos: 36.0ms (59% of total)
ival-atan2: 9.0ms (14.7% of total)
ival-sin: 8.0ms (13.1% of total)
adjust: 4.0ms (6.6% of total)
ival-mult!: 2.0ms (3.3% of total)
ival-add!: 1.0ms (1.6% of total)
ival-sub!: 1.0ms (1.6% of total)

bsearch49.0ms (0.4%)

Memory
-32.5MiB live, 60.6MiB allocated; 5ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
45.0ms
7.866479041195537e-20
4.894131376340077e-18
Samples
34.0ms57×1valid
6.0ms55×0valid
Compiler

Compiled 639 to 553 computations (13.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 36.0ms
ival-cos: 20.0ms (55.6% of total)
ival-sin: 7.0ms (19.5% of total)
adjust: 3.0ms (8.3% of total)
ival-atan2: 3.0ms (8.3% of total)
ival-mult!: 2.0ms (5.6% of total)
ival-add!: 1.0ms (2.8% of total)
ival-sub!: 1.0ms (2.8% of total)

bsearch80.0ms (0.6%)

Memory
44.2MiB live, 89.7MiB allocated; 4ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
44.0ms
1.4830845677508946e-9
0.001833124851635244
32.0ms
-120311359358.63403
-0.4457046209775204
Samples
42.0ms68×1valid
22.0ms156×0valid
Compiler

Compiled 1 771 to 1 503 computations (15.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 57.0ms
ival-cos: 35.0ms (61.4% of total)
ival-sin: 8.0ms (14% of total)
ival-mult!: 5.0ms (8.8% of total)
adjust: 3.0ms (5.3% of total)
ival-atan2: 3.0ms (5.3% of total)
ival-add!: 1.0ms (1.8% of total)
ival-sub!: 1.0ms (1.8% of total)

derivations851.0ms (6.4%)

Memory
-2.6MiB live, 572.1MiB allocated; 135ms collecting garbage
Stop Event
fuel
Compiler

Compiled 481 to 282 computations (41.4% saved)

preprocess315.0ms (2.4%)

Memory
-7.1MiB live, 564.6MiB allocated; 37ms collecting garbage
Remove

(abs phi2)

(abs phi1)

Compiler

Compiled 6 613 to 5 100 computations (22.9% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...