Details

Time bar (total: 35.0s)

analyze9.0s (25.8%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.8%0.2%0
0%99.8%0.2%1
0%99.8%0.2%2
0%99.8%0.2%3
0%99.8%0.2%4
0%99.8%0.2%5
0%99.8%0.2%6
0%99.8%0.2%7
0%99.8%0.2%8
0%99.8%0.2%9
0%99.8%0.2%10
0%99.8%0.2%11
0%99.8%0.2%12
0.6%99.2%0.2%13
1.8%98%0.2%14
Compiler

Compiled 71 to 47 computations (33.8% saved)

sample18.6s (53.3%)

Results
14.1s5530×body1024valid
2.1s1215×body512valid
1.7s407×body2048valid
456.0ms390×body256valid
362.0ms714×body128valid
2.0msbody1024invalid
2.0msbody512invalid

preprocess65.0ms (0.2%)

Algorithm
egg-herbie
Rules
661×cancel-sign-sub-inv_binary64
351×distribute-rgt-neg-in_binary64
312×fma-neg_binary64
281×neg-mul-1_binary64
263×distribute-lft-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01701101
13911057
29681057
323931057
448091057
055
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
3
4
Outputs
0
1
2
3
4
Call 2
Inputs
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 lambda1 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))) (sin.f64 (/.f64 (-.f64 R lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))) (sin.f64 (/.f64 (-.f64 R lambda2) 2)))))))))
(*.f64 lambda2 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))) (sin.f64 (/.f64 (-.f64 lambda1 R) 2)))))))))
(*.f64 phi1 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 R) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 R) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 phi2 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
Outputs
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))) (sqrt.f64 (-.f64 (-.f64 1 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) (*.f64 R 2))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) (*.f64 R 2))
(*.f64 lambda1 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))) (sin.f64 (/.f64 (-.f64 R lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))) (sin.f64 (/.f64 (-.f64 R lambda2) 2)))))))))
(*.f64 lambda1 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) 2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) 2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))))))))))
(*.f64 2 (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) 2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) 2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) lambda1))
(*.f64 2 (*.f64 lambda1 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) 2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) 2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)))))))
(*.f64 2 (*.f64 lambda1 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) 2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 R lambda2) 2)) (sin.f64 (/.f64 (-.f64 R lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)))))))
(*.f64 lambda2 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))) (sin.f64 (/.f64 (-.f64 lambda1 R) 2)))))))))
(*.f64 lambda2 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) 2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) 2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))))))))))
(*.f64 lambda2 (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) 2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) 2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) 2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) 2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) (*.f64 2 lambda2))
(*.f64 lambda2 (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) 2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 R) 2)) (sin.f64 (/.f64 (-.f64 lambda1 R) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)))))))
(*.f64 phi1 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 R) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 R) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 phi1 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 R)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 R)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))))))))
(*.f64 2 (*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 R)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 R)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2))))) phi1))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2))))) (*.f64 2 phi1))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi2) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi2) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 R phi2) 2)) 2))))) (*.f64 2 phi1))
(*.f64 phi2 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 R)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 phi2 (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 R) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 R) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))))
(*.f64 phi2 (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2)))))))
(*.f64 2 (*.f64 phi2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2)))))))
(*.f64 2 (*.f64 phi2 (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (cos.f64 R))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 R) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) (*.f64 R 2))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) (*.f64 R 2))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2)))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2)))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2))))) (*.f64 R 2))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)))))))))
(*.f64 (*.f64 R 2) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2))))) (*.f64 R 2))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)) (sin.f64 (/.f64 (-.f64 phi2 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda1) 2)) 2))))) (*.f64 R 2))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)))))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2)))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2))))) (*.f64 R 2))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 lambda2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 lambda2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 phi1) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda2 phi2) 2)) 2))))) (*.f64 R 2))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2)))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2)))))))
(*.f64 2 (*.f64 R (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 lambda1 phi2) 2)) 2) (cos.f64 lambda2)) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 lambda2) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 (*.f64 R 2) (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2))))) (*.f64 R 2))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (*.f64 (cos.f64 phi1) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi2 phi1) 2)) 2)))))))
Compiler

Compiled 70 to 46 computations (34.3% saved)

simplify41.0ms (0.1%)

Algorithm
egg-herbie
Rules
698×fma-def_binary64
562×fma-neg_binary64
317×cancel-sign-sub-inv_binary64
288×distribute-rgt-neg-in_binary64
278×unswap-sqr_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
027103
15999
212799
329299
471099
5162699
6317899
7485099
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
Outputs
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))) (sqrt.f64 (-.f64 (-.f64 1 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)))))))
(*.f64 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))))) (*.f64 R 2))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)) (*.f64 (cos.f64 phi2) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))) (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))

eval2.0ms (0%)

Compiler

Compiled 133 to 84 computations (36.8% saved)

prune6.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
24.3b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
Compiler

Compiled 276 to 182 computations (34.1% saved)

localize26.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))
0.5b
(-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
2.8b
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
3.0b
(sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))

series39.0ms (0.1%)

Counts
4 → 112
Calls

30 calls:

TimeVariablePointExpression
4.0ms
lambda1
@-inf
(-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
4.0ms
phi1
@inf
(-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
3.0ms
lambda2
@-inf
(*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))
3.0ms
phi2
@inf
(-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
2.0ms
lambda2
@inf
(-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))

rewrite44.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
242×add-sqr-sqrt_binary64
235×pow1_binary64
234×*-un-lft-identity_binary64
225×add-log-exp_binary64
225×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02167
146667
Stop Event
node limit
Counts
4 → 71
Calls
Call 1
Inputs
(sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (/.f64 lambda2 2)) (cos.f64 (/.f64 lambda1 2))) (*.f64 (cos.f64 (/.f64 lambda2 2)) (sin.f64 (/.f64 lambda1 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2))) 2) (cbrt.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2))) (sqrt.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (cos.f64 (-.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2) (*.f64 (-.f64 lambda2 lambda1) 1/2))) (cos.f64 (-.f64 lambda2 lambda1)))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) 2) (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) (sqrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (neg.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))) 2) (cbrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) 3)) (+.f64 1 (+.f64 (pow.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) 2) (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) 2)) (+.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log1p.f64 (neg.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log1p.f64 (neg.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2) (*.f64 (-.f64 lambda2 lambda1) 1/2))) (cos.f64 (-.f64 lambda2 lambda1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2))) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 3) (pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)))) 1))))))

simplify88.0ms (0.3%)

Algorithm
egg-herbie
Rules
614×cancel-sign-sub-inv_binary64
363×fma-neg_binary64
333×fma-def_binary64
288×distribute-rgt-neg-in_binary64
272×associate-*r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02733999
19233667
232013659
Stop Event
node limit
Counts
183 → 162
Calls
Call 1
Inputs
(sin.f64 (*.f64 -1/2 lambda1))
(+.f64 (sin.f64 (*.f64 -1/2 lambda1)) (*.f64 1/2 (*.f64 lambda2 (cos.f64 (*.f64 -1/2 lambda1)))))
(+.f64 (sin.f64 (*.f64 -1/2 lambda1)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (sin.f64 (*.f64 -1/2 lambda1)))) (*.f64 1/2 (*.f64 lambda2 (cos.f64 (*.f64 -1/2 lambda1))))))
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 lambda2 3) (cos.f64 (*.f64 -1/2 lambda1)))) (+.f64 (sin.f64 (*.f64 -1/2 lambda1)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (sin.f64 (*.f64 -1/2 lambda1)))) (*.f64 1/2 (*.f64 lambda2 (cos.f64 (*.f64 -1/2 lambda1)))))))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (*.f64 1/2 lambda2))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) lambda1)) (sin.f64 (*.f64 1/2 lambda2)))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) lambda1)) (+.f64 (sin.f64 (*.f64 1/2 lambda2)) (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (pow.f64 lambda1 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) lambda1)) (+.f64 (sin.f64 (*.f64 1/2 lambda2)) (+.f64 (*.f64 1/48 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (pow.f64 lambda1 3))) (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (pow.f64 lambda1 2))))))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (*.f64 1/2 phi1))
(+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 phi2 2) (sin.f64 (*.f64 1/2 phi1)))) (+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2))))
(+.f64 (*.f64 1/48 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (pow.f64 phi2 3))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 phi2 2) (sin.f64 (*.f64 1/2 phi1)))) (+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)))))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 -1/2 phi2))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) phi1)) (sin.f64 (*.f64 -1/2 phi2)))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 phi1 2) (sin.f64 (*.f64 -1/2 phi2)))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) phi1)) (sin.f64 (*.f64 -1/2 phi2))))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 phi1 2) (sin.f64 (*.f64 -1/2 phi2)))) (+.f64 (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (pow.f64 phi1 3))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) phi1)) (sin.f64 (*.f64 -1/2 phi2)))))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2))))) 1) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2))))) (+.f64 1 (*.f64 -1 (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2)))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2))))) (+.f64 1 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (sin.f64 (*.f64 -1/2 phi2)))) (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (sin.f64 (*.f64 -1/2 phi2))))) (pow.f64 phi1 3))) (*.f64 -1 (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2))))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1))))
(-.f64 (+.f64 1 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (*.f64 phi2 (sin.f64 (*.f64 1/2 phi1))))) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2)) (+.f64 (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1))))) (pow.f64 phi2 2))) (+.f64 1 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (*.f64 phi2 (sin.f64 (*.f64 1/2 phi1)))))) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/8 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (sin.f64 (*.f64 1/2 phi1)))) (*.f64 1/24 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (sin.f64 (*.f64 1/2 phi1))))) (pow.f64 phi2 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2)) (+.f64 (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1))))) (pow.f64 phi2 2))) (+.f64 1 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (*.f64 phi2 (sin.f64 (*.f64 1/2 phi1))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))))) 1) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 2) (cos.f64 phi1))))) 1)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 2) (cos.f64 phi1))))) (+.f64 1 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/24 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1)))) (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 3) (cos.f64 phi1)))))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2) (cos.f64 phi1))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2) (cos.f64 phi1))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2) (cos.f64 phi1))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2) (cos.f64 phi1))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (cos.f64 phi1)))))
(-.f64 (+.f64 1 (*.f64 -1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 lambda1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2)))))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (cos.f64 phi1)))))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2))) (pow.f64 lambda1 2))))) (*.f64 -1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 lambda1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (cos.f64 phi1)))))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2))) (pow.f64 lambda1 2))))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 lambda1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))))))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/16 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (+.f64 (*.f64 1/16 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2)))) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2)))) (*.f64 1/48 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2))))))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 lambda1 3)))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)
(+.f64 (*.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1)))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 lambda2 2)) (+.f64 (*.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1)))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 lambda2 2)) (+.f64 (*.f64 (+.f64 (*.f64 -1/24 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1)))) (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))) (pow.f64 lambda2 3)) (+.f64 (*.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1)))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))))
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)
(+.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))) lambda1))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2))) (pow.f64 lambda1 2)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))) lambda1)))
(+.f64 (*.f64 (+.f64 (*.f64 1/16 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (+.f64 (*.f64 1/16 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2)))) (+.f64 (*.f64 1/48 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))))) (pow.f64 lambda1 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2))) (pow.f64 lambda1 2)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))) lambda1))))
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
Outputs
(sin.f64 (*.f64 -1/2 lambda1))
(+.f64 (sin.f64 (*.f64 -1/2 lambda1)) (*.f64 1/2 (*.f64 lambda2 (cos.f64 (*.f64 -1/2 lambda1)))))
(+.f64 (sin.f64 (*.f64 -1/2 lambda1)) (*.f64 (*.f64 1/2 lambda2) (cos.f64 (*.f64 -1/2 lambda1))))
(fma.f64 1/2 (*.f64 lambda2 (cos.f64 (*.f64 -1/2 lambda1))) (sin.f64 (*.f64 -1/2 lambda1)))
(+.f64 (sin.f64 (*.f64 -1/2 lambda1)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (sin.f64 (*.f64 -1/2 lambda1)))) (*.f64 1/2 (*.f64 lambda2 (cos.f64 (*.f64 -1/2 lambda1))))))
(+.f64 (sin.f64 (*.f64 -1/2 lambda1)) (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (*.f64 lambda2 lambda2)) (*.f64 (*.f64 1/2 lambda2) (cos.f64 (*.f64 -1/2 lambda1)))))
(+.f64 (*.f64 1/2 (*.f64 lambda2 (cos.f64 (*.f64 -1/2 lambda1)))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 lambda2 lambda2)) 1) (sin.f64 (*.f64 -1/2 lambda1))))
(+.f64 (*.f64 -1/48 (*.f64 (pow.f64 lambda2 3) (cos.f64 (*.f64 -1/2 lambda1)))) (+.f64 (sin.f64 (*.f64 -1/2 lambda1)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (sin.f64 (*.f64 -1/2 lambda1)))) (*.f64 1/2 (*.f64 lambda2 (cos.f64 (*.f64 -1/2 lambda1)))))))
(fma.f64 -1/48 (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (pow.f64 lambda2 3)) (+.f64 (sin.f64 (*.f64 -1/2 lambda1)) (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (*.f64 lambda2 lambda2)) (*.f64 (*.f64 1/2 lambda2) (cos.f64 (*.f64 -1/2 lambda1))))))
(fma.f64 -1/48 (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (pow.f64 lambda2 3)) (+.f64 (*.f64 1/2 (*.f64 lambda2 (cos.f64 (*.f64 -1/2 lambda1)))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 lambda2 lambda2)) 1) (sin.f64 (*.f64 -1/2 lambda1)))))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 1/2 lambda2))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) lambda1)) (sin.f64 (*.f64 1/2 lambda2)))
(fma.f64 -1/2 (*.f64 lambda1 (cos.f64 (*.f64 1/2 lambda2))) (sin.f64 (*.f64 1/2 lambda2)))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) lambda1)) (+.f64 (sin.f64 (*.f64 1/2 lambda2)) (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (pow.f64 lambda1 2)))))
(+.f64 (fma.f64 -1/2 (*.f64 lambda1 (cos.f64 (*.f64 1/2 lambda2))) (sin.f64 (*.f64 1/2 lambda2))) (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (*.f64 lambda1 lambda1))))
(fma.f64 -1/2 (*.f64 lambda1 (cos.f64 (*.f64 1/2 lambda2))) (fma.f64 (*.f64 -1/8 (sin.f64 (*.f64 1/2 lambda2))) (*.f64 lambda1 lambda1) (sin.f64 (*.f64 1/2 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) lambda1)) (+.f64 (sin.f64 (*.f64 1/2 lambda2)) (+.f64 (*.f64 1/48 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (pow.f64 lambda1 3))) (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (pow.f64 lambda1 2))))))
(+.f64 (fma.f64 -1/2 (*.f64 lambda1 (cos.f64 (*.f64 1/2 lambda2))) (sin.f64 (*.f64 1/2 lambda2))) (fma.f64 1/48 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (pow.f64 lambda1 3)) (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (*.f64 lambda1 lambda1)))))
(+.f64 (fma.f64 -1/8 (*.f64 lambda1 (*.f64 lambda1 (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (*.f64 (pow.f64 lambda1 3) 1/48))) (fma.f64 -1/2 (*.f64 lambda1 (cos.f64 (*.f64 1/2 lambda2))) (sin.f64 (*.f64 1/2 lambda2))))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(sin.f64 (*.f64 1/2 phi1))
(+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)))
(fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2) (sin.f64 (*.f64 1/2 phi1)))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 phi2 2) (sin.f64 (*.f64 1/2 phi1)))) (+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2))))
(fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 phi2 phi2)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 phi2 phi2)) 1) (sin.f64 (*.f64 1/2 phi1))))
(+.f64 (*.f64 1/48 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (pow.f64 phi2 3))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 phi2 2) (sin.f64 (*.f64 1/2 phi1)))) (+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)))))
(fma.f64 1/48 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (pow.f64 phi2 3)) (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 phi2 phi2)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)))))
(fma.f64 1/48 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (pow.f64 phi2 3)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 phi2 phi2)) 1) (sin.f64 (*.f64 1/2 phi1)))))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 1/2 (fma.f64 -1 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 1/2 (fma.f64 -1 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 1/2 (fma.f64 -1 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 1/2 (fma.f64 -1 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 -1/2 phi2))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) phi1)) (sin.f64 (*.f64 -1/2 phi2)))
(fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2)))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 phi1 2) (sin.f64 (*.f64 -1/2 phi2)))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) phi1)) (sin.f64 (*.f64 -1/2 phi2))))
(fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 phi1)) (fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2))))
(fma.f64 -1/8 (*.f64 phi1 (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2)))) (fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2))))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 phi1 2) (sin.f64 (*.f64 -1/2 phi2)))) (+.f64 (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (pow.f64 phi1 3))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) phi1)) (sin.f64 (*.f64 -1/2 phi2)))))
(fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 phi1)) (fma.f64 -1/48 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (pow.f64 phi1 3)) (fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2)))))
(fma.f64 -1/8 (*.f64 phi1 (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2)))) (fma.f64 -1/48 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (pow.f64 phi1 3)) (fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2)))))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (*.f64 1/2 (fma.f64 -1 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (*.f64 1/2 (fma.f64 -1 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (*.f64 1/2 (fma.f64 -1 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (*.f64 1/2 (fma.f64 -1 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))))
(-.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2))))) 1) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))))
(-.f64 (-.f64 (fma.f64 -1 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2)))) 1) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2)))
(fma.f64 (neg.f64 (cos.f64 (*.f64 -1/2 phi2))) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2))) (-.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2))))
(-.f64 (-.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2))) (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2)))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2))))) (+.f64 1 (*.f64 -1 (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2)))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))))
(-.f64 (+.f64 (fma.f64 -1 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2)))) 1) (neg.f64 (*.f64 (*.f64 phi1 phi1) (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (fma.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2)) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))))
(-.f64 (-.f64 (-.f64 1 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2))))) (*.f64 (*.f64 phi1 phi1) (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) -1/4 (fma.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2)))))) (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2))))) (+.f64 1 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (sin.f64 (*.f64 -1/2 phi2)))) (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (sin.f64 (*.f64 -1/2 phi2))))) (pow.f64 phi1 3))) (*.f64 -1 (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2))))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))))
(-.f64 (+.f64 (fma.f64 -1 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2)))) 1) (*.f64 -1 (+.f64 (*.f64 (pow.f64 phi1 3) (*.f64 (*.f64 (sin.f64 (*.f64 -1/2 phi2)) (cos.f64 (*.f64 -1/2 phi2))) -1/6)) (*.f64 (*.f64 phi1 phi1) (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (fma.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2)) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2)))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))))
(-.f64 (-.f64 (fma.f64 -1 (fma.f64 (pow.f64 phi1 3) (*.f64 (sin.f64 (*.f64 -1/2 phi2)) (*.f64 (cos.f64 (*.f64 -1/2 phi2)) -1/6)) (*.f64 (*.f64 phi1 phi1) (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) -1/4 (fma.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2)))))) 1) (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2))))) (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)))
(-.f64 (-.f64 (-.f64 1 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2))))) (fma.f64 (pow.f64 phi1 3) (*.f64 (sin.f64 (*.f64 -1/2 phi2)) (*.f64 (cos.f64 (*.f64 -1/2 phi2)) -1/6)) (*.f64 (*.f64 phi1 phi1) (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) -1/4 (fma.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2))))))) (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1))))
(-.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi1)))
(-.f64 (+.f64 1 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (*.f64 phi2 (sin.f64 (*.f64 1/2 phi1))))) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1))))
(-.f64 (+.f64 1 (*.f64 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2) (sin.f64 (*.f64 1/2 phi1)))) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1))))
(-.f64 (fma.f64 (cos.f64 (*.f64 1/2 phi1)) (*.f64 (sin.f64 (*.f64 1/2 phi1)) phi2) 1) (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2)) (+.f64 (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1))))) (pow.f64 phi2 2))) (+.f64 1 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (*.f64 phi2 (sin.f64 (*.f64 1/2 phi1)))))) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1))))
(-.f64 (fma.f64 -1 (*.f64 (*.f64 phi2 phi2) (fma.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1)))))) (+.f64 1 (*.f64 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2) (sin.f64 (*.f64 1/2 phi1))))) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1))))
(-.f64 (-.f64 (fma.f64 (cos.f64 (*.f64 1/2 phi1)) (*.f64 (sin.f64 (*.f64 1/2 phi1)) phi2) 1) (*.f64 (*.f64 phi2 phi2) (fma.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (fma.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi1)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)))))) (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/8 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (sin.f64 (*.f64 1/2 phi1)))) (*.f64 1/24 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (sin.f64 (*.f64 1/2 phi1))))) (pow.f64 phi2 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2)) (+.f64 (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1))))) (pow.f64 phi2 2))) (+.f64 1 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (*.f64 phi2 (sin.f64 (*.f64 1/2 phi1))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1))))
(-.f64 (fma.f64 -1 (*.f64 (pow.f64 phi2 3) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 phi1)) (cos.f64 (*.f64 1/2 phi1))) 1/6)) (fma.f64 -1 (*.f64 (*.f64 phi2 phi2) (fma.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1)))))) (+.f64 1 (*.f64 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2) (sin.f64 (*.f64 1/2 phi1)))))) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi1))))
(-.f64 (-.f64 (-.f64 (fma.f64 (cos.f64 (*.f64 1/2 phi1)) (*.f64 (sin.f64 (*.f64 1/2 phi1)) phi2) 1) (*.f64 (*.f64 phi2 phi2) (fma.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (fma.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi1)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)))))) (*.f64 (pow.f64 phi2 3) (*.f64 (cos.f64 (*.f64 1/2 phi1)) (*.f64 (sin.f64 (*.f64 1/2 phi1)) 1/6)))) (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)))
(-.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 phi1)) (cos.f64 (*.f64 1/2 phi1))) -1/6) (pow.f64 phi2 3) (-.f64 (fma.f64 (cos.f64 (*.f64 1/2 phi1)) (*.f64 (sin.f64 (*.f64 1/2 phi1)) phi2) 1) (*.f64 (*.f64 phi2 phi2) (fma.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (fma.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi1)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2))))))) (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 1 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 1 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))))) 1) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 (fma.f64 -1 (*.f64 lambda2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))) 1) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 (-.f64 1 (*.f64 lambda2 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (*.f64 -1/2 lambda1))) (cos.f64 (*.f64 -1/2 lambda1))))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 2) (cos.f64 phi1))))) 1)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 (fma.f64 -1 (*.f64 lambda2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))) (fma.f64 -1 (*.f64 (fma.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 lambda2)) (cos.f64 phi1))) 1)) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 (-.f64 (fma.f64 (neg.f64 (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)))) (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))) 1) (*.f64 lambda2 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (*.f64 -1/2 lambda1))) (cos.f64 (*.f64 -1/2 lambda1))))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 2) (cos.f64 phi1))))) (+.f64 1 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/24 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1)))) (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 3) (cos.f64 phi1)))))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 (fma.f64 -1 (*.f64 lambda2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))) (+.f64 (fma.f64 -1 (*.f64 (fma.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 lambda2)) (cos.f64 phi1))) 1) (neg.f64 (*.f64 (*.f64 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) -1/6) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 3)) (cos.f64 phi1)))))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 (-.f64 (-.f64 (fma.f64 (neg.f64 (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)))) (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))) 1) (*.f64 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))) (*.f64 lambda2 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (*.f64 -1/2 lambda1))) (cos.f64 (*.f64 -1/2 lambda1))))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 (-.f64 (-.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) 1/6) (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (cos.f64 phi1))) 1) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi1)) (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)))))) (*.f64 lambda2 (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (sin.f64 (*.f64 -1/2 lambda1))) (cos.f64 (*.f64 -1/2 lambda1))))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2) (cos.f64 phi1))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2) (cos.f64 phi1))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2) (cos.f64 phi1))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2) (cos.f64 phi1))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (cos.f64 phi1)))))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 (+.f64 1 (*.f64 -1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 lambda1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2)))))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (cos.f64 phi1)))))
(+.f64 1 (-.f64 (neg.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 phi1) lambda1) (*.f64 -1/2 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2)))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (*.f64 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) -1) (cos.f64 phi1))))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2))) (pow.f64 lambda1 2))))) (*.f64 -1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 lambda1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (cos.f64 phi1)))))
(+.f64 1 (-.f64 (fma.f64 -1 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2))))) (neg.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 phi1) lambda1) (*.f64 -1/2 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (cos.f64 phi1)))))
(-.f64 (fma.f64 -1 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (+.f64 (*.f64 lambda1 (*.f64 lambda1 (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))))) (*.f64 lambda1 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) -1)))) 1) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 (-.f64 1 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (+.f64 (*.f64 lambda1 (*.f64 lambda1 (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))))) (*.f64 lambda1 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) -1))))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 (+.f64 1 (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2))) (pow.f64 lambda1 2))))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (*.f64 lambda1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))))))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/16 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (+.f64 (*.f64 1/16 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2)))) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2)))) (*.f64 1/48 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2))))))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 lambda1 3)))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (cos.f64 phi1)))))
(+.f64 1 (-.f64 (fma.f64 -1 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2))))) (*.f64 -1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 phi1) lambda1) (*.f64 -1/2 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))))) (*.f64 (fma.f64 1/16 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) (fma.f64 1/16 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) (*.f64 1/48 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))))) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 3) (cos.f64 phi1))))))) (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (cos.f64 phi1)))))
(+.f64 (-.f64 (neg.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (+.f64 (*.f64 lambda1 (*.f64 lambda1 (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))))) (*.f64 lambda1 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) -1))))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (pow.f64 lambda1 3) (cos.f64 phi1)) (+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) 1/24) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) 1/8))))) (-.f64 1 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2))))
(-.f64 (-.f64 (-.f64 1 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (+.f64 (*.f64 lambda1 (*.f64 lambda1 (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))))) (*.f64 lambda1 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) -1))))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (pow.f64 lambda1 3) (cos.f64 phi1)) (+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) 1/24) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) 1/8))))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)))))
(-.f64 (-.f64 1 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1))))
(-.f64 1 (fma.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))
(pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)
(+.f64 (*.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1)))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))
(fma.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 lambda2 2)) (+.f64 (*.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1)))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)))
(fma.f64 (fma.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (*.f64 lambda2 lambda2) (fma.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)))
(fma.f64 (*.f64 lambda2 lambda2) (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2))) (fma.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 lambda2 2)) (+.f64 (*.f64 (+.f64 (*.f64 -1/24 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1)))) (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))) (pow.f64 lambda2 3)) (+.f64 (*.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1)))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))))
(fma.f64 (fma.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (*.f64 lambda2 lambda2) (fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) -1/6) (pow.f64 lambda2 3) (fma.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))))
(fma.f64 (*.f64 lambda2 lambda2) (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2))) (fma.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) -1/6)) (fma.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))))
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)
(+.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))) lambda1))
(+.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 lambda1 (*.f64 -1/2 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2)))))))
(fma.f64 lambda1 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) -1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2))) (pow.f64 lambda1 2)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))) lambda1)))
(fma.f64 (fma.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2))) (*.f64 lambda1 lambda1) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 lambda1 (*.f64 -1/2 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))))))
(fma.f64 (*.f64 lambda1 lambda1) (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))) (fma.f64 lambda1 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) -1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)))
(+.f64 (*.f64 (+.f64 (*.f64 1/16 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (+.f64 (*.f64 1/16 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2)))) (+.f64 (*.f64 1/48 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))))) (pow.f64 lambda1 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2))) (pow.f64 lambda1 2)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))) lambda1))))
(fma.f64 (fma.f64 1/16 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) (fma.f64 1/16 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) (*.f64 1/48 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))))) (pow.f64 lambda1 3) (fma.f64 (fma.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2))) (*.f64 lambda1 lambda1) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 lambda1 (*.f64 -1/2 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2)))))))))
(fma.f64 (pow.f64 lambda1 3) (+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) 1/24) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) 1/8)) (fma.f64 (*.f64 lambda1 lambda1) (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))) (fma.f64 lambda1 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) -1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2))))
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)

eval428.0ms (1.2%)

Compiler

Compiled 24901 to 15384 computations (38.2% saved)

prune1.3s (3.8%)

Pruning

35 alts after pruning (35 fresh and 0 done)

PrunedKeptTotal
New30834342
Fresh011
Picked101
Done000
Total30935344
Error
22.5b
Counts
344 → 35
Alt Table
Click to see full alt table
StatusErrorProgram
34.7b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
30.9b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi1)))))))
34.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (*.f64 -1/2 lambda1)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
36.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (/.f64 (sqrt.f64 (-.f64 (cos.f64 (-.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2) (*.f64 (-.f64 lambda2 lambda1) 1/2))) (cos.f64 (-.f64 lambda2 lambda1)))) (sqrt.f64 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
24.7b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (-.f64 (*.f64 (sin.f64 (/.f64 lambda2 2)) (cos.f64 (/.f64 lambda1 2))) (*.f64 (cos.f64 (/.f64 lambda2 2)) (sin.f64 (/.f64 lambda1 2)))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
24.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (log.f64 (exp.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 2)))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1)))) 3))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
36.0b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (*.f64 lambda1 lambda1) (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))) (fma.f64 lambda1 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) -1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
35.6b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
31.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 phi2 phi2)) 1) (sin.f64 (*.f64 1/2 phi1)))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (log.f64 (+.f64 1 (expm1.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))))))))
24.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) 2) (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 2)))))))
34.8b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 (-.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2))) (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2)))))))))
25.0b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 3) (pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 3)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
31.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2) (sin.f64 (*.f64 1/2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
34.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
31.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)))))))
34.9b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
26.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1)))) 3) 1/3)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
31.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))))))))
31.7b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)))))))
33.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
32.6b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
41.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3) 1/3) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
34.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (log.f64 (exp.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (/.f64 (-.f64 1 (pow.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) 2)) (+.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))))))
32.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
33.0b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))))))
31.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)))))))
36.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
38.8b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 (-.f64 1 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (+.f64 (*.f64 lambda1 (*.f64 lambda1 (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))))) (*.f64 lambda1 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) -1))))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))))))
24.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (-.f64 (*.f64 (sin.f64 (/.f64 lambda2 2)) (cos.f64 (/.f64 lambda1 2))) (*.f64 (cos.f64 (/.f64 lambda2 2)) (sin.f64 (/.f64 lambda1 2)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
Compiler

Compiled 4958 to 3450 computations (30.4% saved)

localize39.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.4b
(-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))
2.8b
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
3.0b
(sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))
3.2b
(cos.f64 (-.f64 lambda2 lambda1))

series6.0ms (0%)

Counts
2 → 32
Calls

12 calls:

TimeVariablePointExpression
1.0ms
lambda2
@0
(cos.f64 (-.f64 lambda2 lambda1))
1.0ms
lambda2
@0
(-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))
1.0ms
lambda2
@-inf
(-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))
1.0ms
lambda2
@inf
(-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))
1.0ms
lambda1
@0
(-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))

rewrite78.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
559×prod-diff_binary64
263×fma-def_binary64
184×expm1-udef_binary64
184×log1p-udef_binary64
125×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0818
119218
2269916
Stop Event
node limit
Counts
2 → 90
Calls
Call 1
Inputs
(cos.f64 (-.f64 lambda2 lambda1))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 1) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))) (fma.f64 (neg.f64 (neg.f64 (sin.f64 lambda1))) (sin.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda2 lambda1)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda2 lambda1)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (/.f64 (pow.f64 lambda2 3) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1))))) (cos.f64 (/.f64 (pow.f64 lambda1 3) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1)))))) (*.f64 (sin.f64 (/.f64 (pow.f64 lambda2 3) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1))))) (sin.f64 (/.f64 (pow.f64 lambda1 3) (fma.f64 lambda2 lambda2 (*.f64 lambda1 (+.f64 lambda2 lambda1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1))) (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda2 lambda1))) (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda2 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 (-.f64 lambda2 lambda1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda2) (cos.f64 (*.f64 (neg.f64 lambda1) 1))) (*.f64 (sin.f64 lambda2) (sin.f64 (*.f64 (neg.f64 lambda1) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (fma.f64 (neg.f64 lambda1) 1 lambda1))) (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (fma.f64 (neg.f64 lambda1) 1 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda1)) (pow.f64 (cbrt.f64 lambda1) 2) lambda1))) (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda1)) (pow.f64 (cbrt.f64 lambda1) 2) lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 (neg.f64 lambda1) lambda1))) (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (+.f64 (neg.f64 lambda1) lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (-.f64 lambda2 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (-.f64 lambda2 lambda1))) (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda2 lambda1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda2 lambda1))) 2) (cbrt.f64 (cos.f64 (-.f64 lambda2 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (-.f64 lambda2 lambda1))) (sqrt.f64 (cos.f64 (-.f64 lambda2 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 3) (pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 3)) (fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cos.f64 (+.f64 lambda2 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda2 lambda1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (-.f64 lambda2 lambda1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (-.f64 lambda2 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda2 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (-.f64 lambda2 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (neg.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 1 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sqrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sqrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (-.f64 lambda2 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (-.f64 lambda2 lambda1))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1/2 (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)) 2) (cbrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)) (sqrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1/8 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2) 3)) (/.f64 1 (fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2 1/2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1/4 (*.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2) 1/4)) (/.f64 1 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2 1/2) 1/4) (-.f64 1/8 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2 1/2) (-.f64 1/4 (*.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1/8 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2) 3)) (fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2 1/2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1/4 (*.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2) 1/4)) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1/8 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2) 3))) (neg.f64 (fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2 1/2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1/4 (*.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2) 1/4))) (neg.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1/8 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2) 3)) (+.f64 1/4 (-.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)) (*.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1/4 (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))) (-.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (neg.f64 (cos.f64 (-.f64 lambda2 lambda1))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2)) 2) (neg.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2)) (neg.f64 (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (cos.f64 (-.f64 lambda2 lambda1)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)) (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))) (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)) (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cos.f64 (-.f64 lambda2 lambda1))) 1/2 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2)) 2)) (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2))) (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda2 lambda1))) 2)) (cbrt.f64 (cos.f64 (-.f64 lambda2 lambda1))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (sqrt.f64 (cos.f64 (-.f64 lambda2 lambda1)))) (sqrt.f64 (cos.f64 (-.f64 lambda2 lambda1))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)) 1))))))

simplify36.0ms (0.1%)

Algorithm
egg-herbie
Rules
525×fma-neg_binary64
509×fma-def_binary64
290×distribute-rgt-neg-out_binary64
240×distribute-lft-neg-out_binary64
232×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
079538
1248498
2707431
32660422
Stop Event
node limit
Counts
122 → 127
Calls
Call 1
Inputs
(cos.f64 (neg.f64 lambda1))
(+.f64 (cos.f64 (neg.f64 lambda1)) (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))))
(+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1))))))
(+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1)))))))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 lambda2)
(+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))
(+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 lambda1))))
(-.f64 (+.f64 1/2 (*.f64 1/2 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))))) (*.f64 1/2 (cos.f64 (neg.f64 lambda1))))
(-.f64 (+.f64 1/2 (+.f64 (*.f64 1/4 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1)))) (*.f64 1/2 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))))) (*.f64 1/2 (cos.f64 (neg.f64 lambda1))))
(-.f64 (+.f64 1/2 (+.f64 (*.f64 1/4 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 lambda2 3) (sin.f64 (neg.f64 lambda1)))) (*.f64 1/2 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))))))) (*.f64 1/2 (cos.f64 (neg.f64 lambda1))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 lambda2)))
(-.f64 (+.f64 1/2 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 1/2 (cos.f64 lambda2)))
(-.f64 (+.f64 (*.f64 1/4 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 1/2 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) lambda1)))) (*.f64 1/2 (cos.f64 lambda2)))
(-.f64 (+.f64 (*.f64 1/4 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (*.f64 1/12 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 1/2 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) lambda1))))) (*.f64 1/2 (cos.f64 lambda2)))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
Outputs
(cos.f64 (neg.f64 lambda1))
(cos.f64 lambda1)
(+.f64 (cos.f64 (neg.f64 lambda1)) (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))))
(+.f64 (cos.f64 lambda1) (*.f64 (neg.f64 lambda2) (neg.f64 (sin.f64 lambda1))))
(-.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))))
(fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))
(+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1))))))
(+.f64 (cos.f64 lambda1) (fma.f64 -1 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)))))
(+.f64 (cos.f64 lambda1) (fma.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (cos.f64 lambda1) (*.f64 lambda2 (neg.f64 (sin.f64 (neg.f64 lambda1))))))
(fma.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 lambda2 lambda2)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(fma.f64 (cos.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 -1/2)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1)))))))
(+.f64 (cos.f64 lambda1) (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda1)) (pow.f64 lambda2 3)) (fma.f64 -1 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda1)) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 lambda2 lambda2))) (cos.f64 lambda1)))
(fma.f64 (neg.f64 (sin.f64 lambda1)) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 lambda2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (cos.f64 lambda1)))
(+.f64 (cos.f64 lambda1) (fma.f64 (cos.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 -1/2)) (*.f64 (sin.f64 lambda1) (-.f64 lambda2 (*.f64 1/6 (pow.f64 lambda2 3))))))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 lambda2)
(+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))
(+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))
(fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))
(+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (*.f64 lambda1 (sin.f64 lambda2))))
(+.f64 (cos.f64 lambda2) (fma.f64 lambda1 (sin.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))))
(fma.f64 lambda1 (sin.f64 lambda2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (cos.f64 lambda2)))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (fma.f64 lambda1 (sin.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))) (fma.f64 (*.f64 (sin.f64 lambda2) -1/6) (pow.f64 lambda1 3) (cos.f64 lambda2)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (fma.f64 -1 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 lambda1))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 lambda1)))
(+.f64 1/2 (*.f64 (cos.f64 lambda1) -1/2))
(fma.f64 (cos.f64 lambda1) -1/2 1/2)
(-.f64 (+.f64 1/2 (*.f64 1/2 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))))) (*.f64 1/2 (cos.f64 (neg.f64 lambda1))))
(+.f64 1/2 (-.f64 (*.f64 (*.f64 1/2 lambda2) (neg.f64 (sin.f64 lambda1))) (*.f64 (cos.f64 lambda1) 1/2)))
(+.f64 1/2 (*.f64 1/2 (-.f64 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))) (cos.f64 lambda1))))
(fma.f64 (cos.f64 lambda1) -1/2 (fma.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1)) 1/2))
(fma.f64 1/2 (neg.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))) 1/2)
(-.f64 (+.f64 1/2 (+.f64 (*.f64 1/4 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1)))) (*.f64 1/2 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))))) (*.f64 1/2 (cos.f64 (neg.f64 lambda1))))
(+.f64 1/2 (-.f64 (fma.f64 1/4 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (*.f64 (*.f64 1/2 lambda2) (neg.f64 (sin.f64 lambda1)))) (*.f64 (cos.f64 lambda1) 1/2)))
(+.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 1/4 (*.f64 lambda2 lambda2))) (*.f64 1/2 (-.f64 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))) (cos.f64 lambda1)))))
(+.f64 (fma.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1)) 1/2) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/4 (*.f64 lambda2 lambda2)) 1/2)))
(+.f64 (fma.f64 lambda2 (*.f64 -1/2 (sin.f64 lambda1)) 1/2) (*.f64 (cos.f64 lambda1) (fma.f64 lambda2 (*.f64 lambda2 1/4) -1/2)))
(-.f64 (+.f64 1/2 (+.f64 (*.f64 1/4 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 lambda2 3) (sin.f64 (neg.f64 lambda1)))) (*.f64 1/2 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))))))) (*.f64 1/2 (cos.f64 (neg.f64 lambda1))))
(+.f64 1/2 (-.f64 (fma.f64 1/4 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (fma.f64 -1/12 (*.f64 (neg.f64 (sin.f64 lambda1)) (pow.f64 lambda2 3)) (*.f64 (*.f64 1/2 lambda2) (neg.f64 (sin.f64 lambda1))))) (*.f64 (cos.f64 lambda1) 1/2)))
(+.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) 1/4 (*.f64 (sin.f64 (neg.f64 lambda1)) (+.f64 (*.f64 lambda2 1/2) (*.f64 (pow.f64 lambda2 3) -1/12)))) (+.f64 1/2 (*.f64 (cos.f64 lambda1) -1/2)))
(+.f64 1/2 (fma.f64 (neg.f64 (sin.f64 lambda1)) (fma.f64 (pow.f64 lambda2 3) -1/12 (*.f64 lambda2 1/2)) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/4 (*.f64 lambda2 lambda2)) 1/2))))
(+.f64 1/2 (-.f64 (*.f64 (cos.f64 lambda1) (fma.f64 lambda2 (*.f64 lambda2 1/4) -1/2)) (*.f64 (sin.f64 lambda1) (fma.f64 (pow.f64 lambda2 3) -1/12 (*.f64 lambda2 1/2)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (fma.f64 -1 lambda2 lambda1))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (-.f64 lambda2 lambda1))))
(fma.f64 -1/2 (cos.f64 (-.f64 lambda1 lambda2)) 1/2)
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (fma.f64 -1 lambda2 lambda1))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (-.f64 lambda2 lambda1))))
(fma.f64 -1/2 (cos.f64 (-.f64 lambda1 lambda2)) 1/2)
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (fma.f64 -1 lambda2 lambda1))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (-.f64 lambda2 lambda1))))
(fma.f64 -1/2 (cos.f64 (-.f64 lambda1 lambda2)) 1/2)
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (fma.f64 -1 lambda2 lambda1))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (-.f64 lambda2 lambda1))))
(fma.f64 -1/2 (cos.f64 (-.f64 lambda1 lambda2)) 1/2)
(-.f64 1/2 (*.f64 1/2 (cos.f64 lambda2)))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 lambda2)))
(fma.f64 -1/2 (cos.f64 lambda2) 1/2)
(-.f64 (+.f64 1/2 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 1/2 (cos.f64 lambda2)))
(+.f64 1/2 (-.f64 (*.f64 (*.f64 -1/2 (sin.f64 lambda2)) lambda1) (*.f64 (cos.f64 lambda2) 1/2)))
(+.f64 1/2 (fma.f64 (*.f64 -1/2 (sin.f64 lambda2)) lambda1 (*.f64 -1/2 (cos.f64 lambda2))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))
(-.f64 (+.f64 (*.f64 1/4 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 1/2 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) lambda1)))) (*.f64 1/2 (cos.f64 lambda2)))
(+.f64 (fma.f64 1/4 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (+.f64 1/2 (*.f64 (*.f64 -1/2 (sin.f64 lambda2)) lambda1))) (*.f64 -1/2 (cos.f64 lambda2)))
(+.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) 1/4 1/2) (fma.f64 (*.f64 -1/2 (sin.f64 lambda2)) lambda1 (*.f64 -1/2 (cos.f64 lambda2))))
(+.f64 (*.f64 -1/2 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (fma.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 1/4)) 1/2))
(+.f64 (fma.f64 (sin.f64 lambda2) (*.f64 lambda1 -1/2) 1/2) (*.f64 (cos.f64 lambda2) (fma.f64 lambda1 (*.f64 lambda1 1/4) -1/2)))
(-.f64 (+.f64 (*.f64 1/4 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (*.f64 1/12 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 1/2 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) lambda1))))) (*.f64 1/2 (cos.f64 lambda2)))
(+.f64 (fma.f64 1/4 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (fma.f64 1/12 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (+.f64 1/2 (*.f64 (*.f64 -1/2 (sin.f64 lambda2)) lambda1)))) (*.f64 -1/2 (cos.f64 lambda2)))
(+.f64 (fma.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) 1/4 (fma.f64 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) 1/12 (fma.f64 -1/2 (*.f64 lambda1 (sin.f64 lambda2)) 1/2))) (*.f64 -1/2 (cos.f64 lambda2)))
(+.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 (pow.f64 lambda1 3) 1/12) (*.f64 lambda1 -1/2))) (*.f64 (cos.f64 lambda2) (-.f64 (*.f64 lambda1 (*.f64 lambda1 1/4)) 1/2))))
(+.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 (pow.f64 lambda1 3) 1/12) (*.f64 lambda1 -1/2))) (*.f64 (cos.f64 lambda2) (fma.f64 lambda1 (*.f64 lambda1 1/4) -1/2))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (fma.f64 -1 lambda2 lambda1))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (-.f64 lambda2 lambda1))))
(fma.f64 -1/2 (cos.f64 (-.f64 lambda1 lambda2)) 1/2)
(-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (fma.f64 -1 lambda2 lambda1))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (-.f64 lambda2 lambda1))))
(fma.f64 -1/2 (cos.f64 (-.f64 lambda1 lambda2)) 1/2)
(-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (fma.f64 -1 lambda2 lambda1))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (-.f64 lambda2 lambda1))))
(fma.f64 -1/2 (cos.f64 (-.f64 lambda1 lambda2)) 1/2)
(-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (fma.f64 -1 lambda2 lambda1))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (-.f64 lambda2 lambda1))))
(fma.f64 -1/2 (cos.f64 (-.f64 lambda1 lambda2)) 1/2)

eval299.0ms (0.9%)

Compiler

Compiled 18366 to 10983 computations (40.2% saved)

prune945.0ms (2.7%)

Pruning

40 alts after pruning (40 fresh and 0 done)

PrunedKeptTotal
New24920269
Fresh142034
Picked101
Done000
Total26440304
Error
22.4b
Counts
304 → 40
Alt Table
Click to see full alt table
StatusErrorProgram
31.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 phi2 phi2)) 1) (sin.f64 (*.f64 1/2 phi1)))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
34.7b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
30.9b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi1)))))))
33.0b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 -1/2 (cos.f64 lambda2) 1/2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (log.f64 (exp.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 2)))))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
24.7b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (-.f64 (*.f64 (sin.f64 (/.f64 lambda2 2)) (cos.f64 (/.f64 lambda1 2))) (*.f64 (cos.f64 (/.f64 lambda2 2)) (sin.f64 (/.f64 lambda1 2)))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
36.0b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (*.f64 lambda1 lambda1) (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))) (fma.f64 lambda1 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) -1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
24.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
25.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3)) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
35.6b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (log.f64 (+.f64 1 (expm1.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))))))))
24.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) 2) (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 2)))))))
24.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
25.0b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 3) (pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 3)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
31.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2) (sin.f64 (*.f64 1/2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
33.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cbrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
26.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1)))) 3) 1/3)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
36.8b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (fma.f64 -1/8 (*.f64 phi1 (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2)))) (fma.f64 -1/48 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (pow.f64 phi1 3)) (fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2))))) 2)))))))))
34.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
31.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)))))))
34.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
34.9b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
31.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))))))))
31.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)))))))))
33.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
32.6b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
31.7b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)))))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (log.f64 (exp.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
33.0b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (-.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda1)) (pow.f64 (cbrt.f64 lambda1) 2) lambda1))) (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda1)) (pow.f64 (cbrt.f64 lambda1) 2) lambda1))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (/.f64 (-.f64 1 (pow.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) 2)) (+.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))))))
32.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
24.5b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cos.f64 (+.f64 lambda2 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
46.0b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda2 lambda1)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda2 lambda1)))) (sin.f64 1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
36.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (/.f64 (sqrt.f64 (-.f64 (cos.f64 (-.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2) (*.f64 (-.f64 lambda2 lambda1) 1/2))) (cos.f64 (-.f64 lambda2 lambda1)))) (sqrt.f64 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (-.f64 (*.f64 (sin.f64 (/.f64 lambda2 2)) (cos.f64 (/.f64 lambda1 2))) (*.f64 (cos.f64 (/.f64 lambda2 2)) (sin.f64 (/.f64 lambda1 2)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
24.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 3) (pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 3)) (fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
36.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
41.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3) 1/3) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
Compiler

Compiled 5860 to 4018 computations (31.4% saved)

localize49.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.4b
(-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
2.8b
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
3.0b
(sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))
8.9b
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))

series41.0ms (0.1%)

Counts
2 → 36
Calls

12 calls:

TimeVariablePointExpression
12.0ms
lambda1
@inf
(-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
6.0ms
lambda1
@-inf
(-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
4.0ms
lambda1
@inf
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
4.0ms
lambda2
@inf
(-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
3.0ms
lambda2
@-inf
(-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))

rewrite57.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
282×expm1-udef_binary64
282×log1p-udef_binary64
213×fma-neg_binary64
163×add-sqr-sqrt_binary64
158×pow1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01534
131922
2406422
Stop Event
node limit
Counts
2 → 56
Calls
Call 1
Inputs
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) 2) (cbrt.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 lambda2)) (cbrt.f64 (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 lambda1)) (cbrt.f64 (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/6) (pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) 1/3) (pow.f64 (sqrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1)))) (cbrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1/2 (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))) (pow.f64 (cbrt.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))) 2) (cbrt.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))) (sqrt.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1/8 (*.f64 1/8 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 3))) (/.f64 1 (+.f64 1/4 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2)) (*.f64 1/4 (cos.f64 (-.f64 lambda2 lambda1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2))) (/.f64 1 (*.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 1/4 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2)) (*.f64 1/4 (cos.f64 (-.f64 lambda2 lambda1))))) (-.f64 1/8 (*.f64 1/8 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1) 1/2) (-.f64 1/4 (*.f64 1/4 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1/8 (*.f64 1/8 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 3))) (+.f64 1/4 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2)) (*.f64 1/4 (cos.f64 (-.f64 lambda2 lambda1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2))) (*.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1/8 (*.f64 1/8 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 3)))) (neg.f64 (+.f64 1/4 (+.f64 (*.f64 1/4 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2)) (*.f64 1/4 (cos.f64 (-.f64 lambda2 lambda1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1/4 (*.f64 1/4 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2)))) (neg.f64 (*.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1/8 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2) 3)) (+.f64 1/4 (-.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)) (*.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1/4 (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))) (-.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (+.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2))) 1))))))

simplify40.0ms (0.1%)

Algorithm
egg-herbie
Rules
681×distribute-rgt-neg-in_binary64
568×fma-neg_binary64
559×associate-*l*_binary64
402×fma-def_binary64
338×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
034574
199569
2240526
3558522
41262522
53494522
Stop Event
node limit
Counts
92 → 68
Calls
Call 1
Inputs
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(-.f64 1/2 (*.f64 1/2 (cos.f64 lambda1)))
(-.f64 (+.f64 1/2 (*.f64 1/4 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1)))) (*.f64 1/2 (cos.f64 lambda1)))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 lambda2)))
(-.f64 (+.f64 (*.f64 1/4 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) 1/2) (*.f64 1/2 (cos.f64 lambda2)))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
Outputs
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 1/3)
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(-.f64 1/2 (*.f64 1/2 (cos.f64 lambda1)))
(+.f64 1/2 (*.f64 (cos.f64 lambda1) -1/2))
(fma.f64 (cos.f64 lambda1) -1/2 1/2)
(-.f64 (+.f64 1/2 (*.f64 1/4 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1)))) (*.f64 1/2 (cos.f64 lambda1)))
(+.f64 1/2 (-.f64 (*.f64 (*.f64 1/4 (*.f64 lambda2 lambda2)) (cos.f64 lambda1)) (*.f64 1/2 (cos.f64 lambda1))))
(+.f64 1/2 (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/4 (*.f64 lambda2 lambda2)) 1/2)))
(fma.f64 (cos.f64 lambda1) (fma.f64 1/4 (*.f64 lambda2 lambda2) -1/2) 1/2)
(fma.f64 (cos.f64 lambda1) (fma.f64 lambda2 (*.f64 lambda2 1/4) -1/2) 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)
(-.f64 1/2 (*.f64 1/2 (cos.f64 lambda2)))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 lambda2)))
(+.f64 1/2 (*.f64 (cos.f64 lambda2) -1/2))
(fma.f64 (cos.f64 lambda2) -1/2 1/2)
(-.f64 (+.f64 (*.f64 1/4 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) 1/2) (*.f64 1/2 (cos.f64 lambda2)))
(+.f64 (fma.f64 1/4 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) 1/2) (*.f64 -1/2 (cos.f64 lambda2)))
(+.f64 (fma.f64 1/4 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2))) 1/2) (*.f64 (cos.f64 lambda2) -1/2))
(+.f64 1/2 (*.f64 (cos.f64 lambda2) (-.f64 (*.f64 1/4 (*.f64 lambda1 lambda1)) 1/2)))
(fma.f64 (cos.f64 lambda2) (fma.f64 lambda1 (*.f64 lambda1 1/4) -1/2) 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)
(-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 1/2 (*.f64 -1/2 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(+.f64 1/2 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) -1/2 1/2)

eval291.0ms (0.8%)

Compiler

Compiled 22275 to 10785 computations (51.6% saved)

prune965.0ms (2.8%)

Pruning

41 alts after pruning (41 fresh and 0 done)

PrunedKeptTotal
New24717264
Fresh152439
Picked101
Done000
Total26341304
Error
22.2b
Counts
304 → 41
Alt Table
Click to see full alt table
StatusErrorProgram
36.6b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (fma.f64 -1/8 (*.f64 phi1 (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2)))) (fma.f64 -1/48 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (pow.f64 phi1 3)) (fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2))))) 2)))))))))
41.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3) 1/3) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
34.7b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
30.9b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi1)))))))
24.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) 2) (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 2)))))))))
36.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
34.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 3)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (log.f64 (exp.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 2)))))))))
31.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 phi2 phi2)) 1) (sin.f64 (*.f64 1/2 phi1)))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
33.0b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 -1/2 (cos.f64 lambda2) 1/2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
31.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)))))))))
24.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 1) 2)))))))))
35.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (fma.f64 1/2 (*.f64 lambda2 (cos.f64 (*.f64 -1/2 lambda1))) (sin.f64 (*.f64 -1/2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
25.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3)) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
31.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2) (sin.f64 (*.f64 1/2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
33.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cbrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
26.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1)))) 3) 1/3)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
34.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
31.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)))))))
34.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
34.9b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
31.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))))))))
31.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)))))))))
33.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
32.6b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (log.f64 (exp.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
33.0b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (-.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda1)) (pow.f64 (cbrt.f64 lambda1) 2) lambda1))) (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda1)) (pow.f64 (cbrt.f64 lambda1) 2) lambda1))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (/.f64 (-.f64 1 (pow.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) 2)) (+.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))))))
34.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
32.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
24.5b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cos.f64 (+.f64 lambda2 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
35.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (*.f64 1/2 lambda2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.5b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (-.f64 (*.f64 (sin.f64 (/.f64 lambda2 2)) (cos.f64 (/.f64 lambda1 2))) (*.f64 (cos.f64 (/.f64 lambda2 2)) (sin.f64 (/.f64 lambda1 2)))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (-.f64 (*.f64 (sin.f64 (/.f64 lambda2 2)) (cos.f64 (/.f64 lambda1 2))) (*.f64 (cos.f64 (/.f64 lambda2 2)) (sin.f64 (/.f64 lambda1 2)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
35.9b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (/.f64 (sqrt.f64 (-.f64 (cos.f64 (-.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2) (*.f64 (-.f64 lambda2 lambda1) 1/2))) (cos.f64 (-.f64 lambda2 lambda1)))) (sqrt.f64 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
24.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fabs.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (log.f64 (+.f64 1 (expm1.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))))))))
31.5b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)))))))))
Compiler

Compiled 6420 to 4266 computations (33.6% saved)

localize55.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.8b
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
3.0b
(sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2))
3.8b
(-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 1)
8.9b
(cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))

series128.0ms (0.4%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
43.0ms
phi1
@inf
(-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 1)
36.0ms
phi2
@inf
(-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 1)
25.0ms
phi1
@-inf
(-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 1)
18.0ms
phi2
@-inf
(-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 1)
3.0ms
phi2
@0
(-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 1)

rewrite43.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
615×prod-diff_binary64
256×fma-def_binary64
182×log1p-udef_binary64
181×expm1-udef_binary64
163×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0119
12319
227119
Stop Event
node limit
Counts
1 → 39
Calls
Call 1
Inputs
(-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 phi2 -1/2)) (cos.f64 (*.f64 (neg.f64 phi1) -1/2))) (*.f64 (cos.f64 (*.f64 phi2 -1/2)) (sin.f64 (*.f64 (neg.f64 phi1) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 -1/2 phi2)) (cos.f64 (*.f64 -1/2 (neg.f64 phi1)))) (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (sin.f64 (*.f64 -1/2 (neg.f64 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) 2) (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) (sqrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (expm1.f64 (*.f64 3 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))) (/.f64 1 (+.f64 (pow.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) 2) (+.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (expm1.f64 (*.f64 2 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))) (/.f64 1 (+.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) 1) (expm1.f64 (*.f64 1/2 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) 2) (+.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) 1)) (expm1.f64 (*.f64 3 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) 1) (expm1.f64 (*.f64 2 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (expm1.f64 (*.f64 3 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))) (+.f64 (pow.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) 2) (+.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (expm1.f64 (*.f64 3 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))) (+.f64 (pow.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) 2) (-.f64 1 (*.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (expm1.f64 (*.f64 2 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))) (+.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (expm1.f64 (*.f64 3 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))))) (neg.f64 (+.f64 (pow.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) 2) (+.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (expm1.f64 (*.f64 2 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))))) (neg.f64 (+.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) 1 -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) (pow.f64 (cbrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) 2) (cbrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) 2) (*.f64 (cbrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) (sqrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) (*.f64 (sqrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) 1))))))

simplify34.0ms (0.1%)

Algorithm
egg-herbie
Rules
676×fma-def_binary64
492×distribute-rgt-in_binary64
488×distribute-lft-in_binary64
333×times-frac_binary64
283×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01161014
1402982
21500838
Stop Event
node limit
Counts
63 → 56
Calls
Call 1
Inputs
(sin.f64 (*.f64 1/2 phi1))
(+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 (*.f64 1/2 phi1)) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (*.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 2))))) (*.f64 1/8 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 2)))) (*.f64 (pow.f64 phi2 2) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2))))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 (*.f64 1/2 phi1)) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (*.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 2))))) (*.f64 1/8 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 2)))) (*.f64 (pow.f64 phi2 2) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (+.f64 (*.f64 (pow.f64 phi2 3) (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 (*.f64 1/2 phi1)) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (*.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 2))))) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (+.f64 (*.f64 -1/48 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 3) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 3))) (*.f64 1/6 (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 3) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 3))) (+.f64 (*.f64 1/8 (/.f64 (cos.f64 (*.f64 1/2 phi1)) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (*.f64 -3/8 (/.f64 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (sin.f64 (*.f64 1/2 phi1))) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 2)))))))) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)))))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 -1/2 phi2))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) phi1)) (sin.f64 (*.f64 -1/2 phi2)))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))) (*.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2))))) (*.f64 1/8 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)))) (*.f64 (pow.f64 phi1 2) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) phi1)) (sin.f64 (*.f64 -1/2 phi2))))
(+.f64 (*.f64 (pow.f64 phi1 3) (*.f64 (+.f64 (*.f64 1/48 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 3) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 3))) (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/8 (/.f64 (cos.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 3) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 3))) (*.f64 3/8 (/.f64 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (sin.f64 (*.f64 -1/2 phi2))) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)))))) (*.f64 1/4 (/.f64 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))) (*.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2))))) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))))) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))) (*.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2))))) (*.f64 1/8 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)))) (*.f64 (pow.f64 phi1 2) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) phi1)) (sin.f64 (*.f64 -1/2 phi2)))))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
Outputs
(sin.f64 (*.f64 1/2 phi1))
(+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)))
(fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2) (sin.f64 (*.f64 1/2 phi1)))
(fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 -1/2 phi1)) phi2) (sin.f64 (*.f64 1/2 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 (*.f64 1/2 phi1)) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (*.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 2))))) (*.f64 1/8 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 2)))) (*.f64 (pow.f64 phi2 2) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2))))
(fma.f64 (fma.f64 1/2 (*.f64 -1/4 (+.f64 (/.f64 (sin.f64 (*.f64 1/2 phi1)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1)) (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 2)))) (*.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 2)) 1/8)) (*.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) (*.f64 phi2 phi2)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2))))
(fma.f64 (fma.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 2)) 1/8 (*.f64 -1/8 (+.f64 (/.f64 (sin.f64 (*.f64 1/2 phi1)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1)) (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 2))))) (*.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) (*.f64 phi2 phi2)) (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2) (sin.f64 (*.f64 1/2 phi1))))
(fma.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) (*.f64 (fma.f64 (/.f64 (sin.f64 (*.f64 1/2 phi1)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1)) -1/8 (*.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi1)) 2) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 2)) 0)) (*.f64 phi2 phi2)) (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 -1/2 phi1)) phi2) (sin.f64 (*.f64 1/2 phi1))))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 (*.f64 1/2 phi1)) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (*.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 2))))) (*.f64 1/8 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 2)))) (*.f64 (pow.f64 phi2 2) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (+.f64 (*.f64 (pow.f64 phi2 3) (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 (*.f64 1/2 phi1)) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (*.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 2))))) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (+.f64 (*.f64 -1/48 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 3) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 3))) (*.f64 1/6 (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 3) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 3))) (+.f64 (*.f64 1/8 (/.f64 (cos.f64 (*.f64 1/2 phi1)) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (*.f64 -3/8 (/.f64 (*.f64 (cos.f64 (*.f64 1/2 phi1)) (sin.f64 (*.f64 1/2 phi1))) (pow.f64 (+.f64 1 (sin.f64 (*.f64 1/2 phi1))) 2)))))))) (+.f64 1 (sin.f64 (*.f64 1/2 phi1))))) (+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)))))
(fma.f64 (fma.f64 1/2 (*.f64 -1/4 (+.f64 (/.f64 (sin.f64 (*.f64 1/2 phi1)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1)) (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 2)))) (*.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 2)) 1/8)) (*.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) (*.f64 phi2 phi2)) (fma.f64 (pow.f64 phi2 3) (*.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) (fma.f64 -1/4 (/.f64 (cos.f64 (*.f64 1/2 phi1)) (/.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) (*.f64 -1/4 (+.f64 (/.f64 (sin.f64 (*.f64 1/2 phi1)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1)) (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 2)))))) (fma.f64 -1/48 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 3) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 3)) (*.f64 1/6 (fma.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 3) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 3)) (fma.f64 1/8 (/.f64 (cos.f64 (*.f64 1/2 phi1)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1)) (*.f64 -3/8 (/.f64 (*.f64 (sin.f64 (*.f64 1/2 phi1)) (cos.f64 (*.f64 1/2 phi1))) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 2))))))))) (+.f64 (sin.f64 (*.f64 1/2 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)))))
(+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2) (sin.f64 (*.f64 1/2 phi1))) (*.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) (+.f64 (*.f64 (fma.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 2)) 1/8 (*.f64 -1/8 (+.f64 (/.f64 (sin.f64 (*.f64 1/2 phi1)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1)) (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 2))))) (*.f64 phi2 phi2)) (*.f64 (pow.f64 phi2 3) (fma.f64 -1/4 (*.f64 (/.f64 (cos.f64 (*.f64 1/2 phi1)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1)) (*.f64 -1/4 (+.f64 (/.f64 (sin.f64 (*.f64 1/2 phi1)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1)) (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 2))))) (fma.f64 1/6 (fma.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 3) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 3)) (fma.f64 -3/8 (/.f64 (*.f64 (sin.f64 (*.f64 1/2 phi1)) (cos.f64 (*.f64 1/2 phi1))) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 2)) (/.f64 1/8 (/.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) (cos.f64 (*.f64 1/2 phi1)))))) (/.f64 (*.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 3)) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 3))))))))
(fma.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) (*.f64 (*.f64 phi2 phi2) (+.f64 (fma.f64 (/.f64 (sin.f64 (*.f64 1/2 phi1)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1)) -1/8 (*.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi1)) 2) (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 2)) 0)) (*.f64 phi2 (fma.f64 -1/4 (+.f64 (*.f64 -1/4 (pow.f64 (/.f64 (cos.f64 (*.f64 -1/2 phi1)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1)) 3)) (*.f64 (*.f64 (/.f64 -1/4 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1)) (sin.f64 (*.f64 1/2 phi1))) (/.f64 (cos.f64 (*.f64 -1/2 phi1)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1)))) (+.f64 (*.f64 (pow.f64 (/.f64 (cos.f64 (*.f64 -1/2 phi1)) (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1)) 3) -1/16) (+.f64 (/.f64 -1/16 (/.f64 (pow.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) 2) (*.f64 (sin.f64 (*.f64 1/2 phi1)) (cos.f64 (*.f64 -1/2 phi1))))) (/.f64 1/48 (/.f64 (+.f64 (sin.f64 (*.f64 1/2 phi1)) 1) (cos.f64 (*.f64 -1/2 phi1)))))))))) (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 -1/2 phi1)) phi2) (sin.f64 (*.f64 1/2 phi1))))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 1/2 (+.f64 (*.f64 -1 phi2) phi1)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 -1/2 phi2))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) phi1)) (sin.f64 (*.f64 -1/2 phi2)))
(fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2)))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))) (*.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2))))) (*.f64 1/8 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)))) (*.f64 (pow.f64 phi1 2) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) phi1)) (sin.f64 (*.f64 -1/2 phi2))))
(fma.f64 (fma.f64 1/2 (*.f64 -1/4 (+.f64 (/.f64 (sin.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2)))) (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)))) (*.f64 1/8 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)))) (*.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) (*.f64 phi1 phi1)) (fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2))))
(fma.f64 (fma.f64 1/8 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)) (*.f64 -1/8 (+.f64 (/.f64 (sin.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2)))) (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2))))) (*.f64 phi1 (*.f64 phi1 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))) (fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2))))
(fma.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) (*.f64 (fma.f64 (/.f64 (sin.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2)))) -1/8 (*.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)) 0)) (*.f64 phi1 phi1)) (fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2))))
(+.f64 (*.f64 (pow.f64 phi1 3) (*.f64 (+.f64 (*.f64 1/48 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 3) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 3))) (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/8 (/.f64 (cos.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))) (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 3) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 3))) (*.f64 3/8 (/.f64 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (sin.f64 (*.f64 -1/2 phi2))) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)))))) (*.f64 1/4 (/.f64 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))) (*.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2))))) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))))) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))) (*.f64 -1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2))))) (*.f64 1/8 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)))) (*.f64 (pow.f64 phi1 2) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))))) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) phi1)) (sin.f64 (*.f64 -1/2 phi2)))))
(fma.f64 (pow.f64 phi1 3) (*.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) (fma.f64 1/48 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 3) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 3)) (fma.f64 1/6 (fma.f64 -1/8 (/.f64 (cos.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2)))) (fma.f64 1/4 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 3) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 3)) (*.f64 3/8 (/.f64 (cos.f64 (*.f64 -1/2 phi2)) (/.f64 (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2) (sin.f64 (*.f64 -1/2 phi2))))))) (*.f64 1/4 (/.f64 (cos.f64 (*.f64 -1/2 phi2)) (/.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) (*.f64 -1/4 (+.f64 (/.f64 (sin.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2)))) (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)))))))))) (fma.f64 (fma.f64 1/2 (*.f64 -1/4 (+.f64 (/.f64 (sin.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2)))) (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)))) (*.f64 1/8 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)))) (*.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) (*.f64 phi1 phi1)) (fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2)))))
(+.f64 (fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2))) (*.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) (+.f64 (*.f64 (pow.f64 phi1 3) (fma.f64 1/48 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 3) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 3)) (fma.f64 1/6 (fma.f64 -1/8 (/.f64 (cos.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2)))) (fma.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 3) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 3)) 1/4 (/.f64 (*.f64 (*.f64 3/8 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2))) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)))) (*.f64 1/4 (*.f64 (/.f64 (cos.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2)))) (*.f64 -1/4 (+.f64 (/.f64 (sin.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2)))) (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2))))))))) (*.f64 (fma.f64 1/8 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)) (*.f64 -1/8 (+.f64 (/.f64 (sin.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2)))) (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2))))) (*.f64 phi1 phi1)))))
(fma.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) (*.f64 (*.f64 phi1 phi1) (+.f64 (*.f64 phi1 (fma.f64 1/6 (fma.f64 (pow.f64 (/.f64 (cos.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2)))) 3) 1/4 (fma.f64 3/8 (*.f64 (/.f64 (cos.f64 (*.f64 -1/2 phi2)) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)) (sin.f64 (*.f64 -1/2 phi2))) (/.f64 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) -1/8) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2)))))) (fma.f64 1/4 (*.f64 (/.f64 (cos.f64 (*.f64 -1/2 phi2)) (/.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) -1/4)) (+.f64 (/.f64 (sin.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2)))) (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)))) (*.f64 1/48 (pow.f64 (/.f64 (cos.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2)))) 3))))) (fma.f64 (/.f64 (sin.f64 (*.f64 -1/2 phi2)) (+.f64 1 (sin.f64 (*.f64 -1/2 phi2)))) -1/8 (*.f64 (/.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (pow.f64 (+.f64 1 (sin.f64 (*.f64 -1/2 phi2))) 2)) 0)))) (fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2))))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))
(sin.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 phi1) phi2)))
(sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))
(sin.f64 (*.f64 1/2 (-.f64 phi1 phi2)))

eval342.0ms (1%)

Compiler

Compiled 26338 to 13192 computations (49.9% saved)

prune959.0ms (2.7%)

Pruning

40 alts after pruning (40 fresh and 0 done)

PrunedKeptTotal
New2745279
Fresh53540
Picked101
Done000
Total28040320
Error
22.1b
Counts
320 → 40
Alt Table
Click to see full alt table
StatusErrorProgram
41.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3) 1/3) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
34.7b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
30.9b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi1)))))))
24.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) 2) (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 2)))))))))
36.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
34.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 3)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
23.5b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (+.f64 (*.f64 (sin.f64 (*.f64 phi2 -1/2)) (cos.f64 (*.f64 (neg.f64 phi1) -1/2))) (*.f64 (cos.f64 (*.f64 phi2 -1/2)) (sin.f64 (*.f64 (neg.f64 phi1) -1/2)))) 2)))))))))
31.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 phi2 phi2)) 1) (sin.f64 (*.f64 1/2 phi1)))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
33.0b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 -1/2 (cos.f64 lambda2) 1/2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
31.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)))))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (log.f64 (+.f64 1 (expm1.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))))))))
24.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3)))) 1) 2)))))))))
31.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2) (sin.f64 (*.f64 1/2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
33.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
34.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
31.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)))))))
24.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cbrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
34.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
34.9b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
31.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))))))))
31.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)))))))))
33.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
32.6b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (log.f64 (exp.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
33.0b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (-.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda1)) (pow.f64 (cbrt.f64 lambda1) 2) lambda1))) (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda1)) (pow.f64 (cbrt.f64 lambda1) 2) lambda1))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (/.f64 (-.f64 1 (pow.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) 2)) (+.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))))))
34.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
32.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
31.5b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)))))))))
24.5b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cos.f64 (+.f64 lambda2 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
35.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (*.f64 1/2 lambda2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (fma.f64 (cbrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) (pow.f64 (cbrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) 2) -1) 2)))))))))
24.5b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (-.f64 (*.f64 (sin.f64 (/.f64 lambda2 2)) (cos.f64 (/.f64 lambda1 2))) (*.f64 (cos.f64 (/.f64 lambda2 2)) (sin.f64 (/.f64 lambda1 2)))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (-.f64 (*.f64 (sin.f64 (/.f64 lambda2 2)) (cos.f64 (/.f64 lambda1 2))) (*.f64 (cos.f64 (/.f64 lambda2 2)) (sin.f64 (/.f64 lambda1 2)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
35.9b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (/.f64 (sqrt.f64 (-.f64 (cos.f64 (-.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2) (*.f64 (-.f64 lambda2 lambda1) 1/2))) (cos.f64 (-.f64 lambda2 lambda1)))) (sqrt.f64 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.3b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
24.2b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fabs.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
24.1b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) 1) (expm1.f64 (*.f64 1/2 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))))) 2)))))))))
35.4b
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (fma.f64 1/2 (*.f64 lambda2 (cos.f64 (*.f64 -1/2 lambda1))) (sin.f64 (*.f64 -1/2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
Compiler

Compiled 3162 to 2102 computations (33.5% saved)

regimes764.0ms (2.2%)

Accuracy

Total -39.3b remaining (-167.2%)

Threshold costs -39.3b (-167.2%)

Counts
78 → 1
Calls
Call 1
Inputs
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (+.f64 (*.f64 (sin.f64 (*.f64 phi2 -1/2)) (cos.f64 (*.f64 (neg.f64 phi1) -1/2))) (*.f64 (cos.f64 (*.f64 phi2 -1/2)) (sin.f64 (*.f64 (neg.f64 phi1) -1/2)))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (-.f64 (exp.f64 (log1p.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3)))) 1) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (fma.f64 (cbrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) (pow.f64 (cbrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) 2) -1) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (*.f64 (+.f64 (sqrt.f64 (+.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 1)) 1) (expm1.f64 (*.f64 1/2 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (fma.f64 -1/8 (*.f64 phi1 (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2)))) (fma.f64 -1/48 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (pow.f64 phi1 3)) (fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2))))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3) 1/3) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) 2) (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 3)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (log.f64 (exp.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 phi2 phi2)) 1) (sin.f64 (*.f64 1/2 phi1)))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 1) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (fma.f64 1/2 (*.f64 lambda2 (cos.f64 (*.f64 -1/2 lambda1))) (sin.f64 (*.f64 -1/2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3)) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (*.f64 1/2 lambda2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (-.f64 (*.f64 (sin.f64 (/.f64 lambda2 2)) (cos.f64 (/.f64 lambda1 2))) (*.f64 (cos.f64 (/.f64 lambda2 2)) (sin.f64 (/.f64 lambda1 2)))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (/.f64 (sqrt.f64 (-.f64 (cos.f64 (-.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2) (*.f64 (-.f64 lambda2 lambda1) 1/2))) (cos.f64 (-.f64 lambda2 lambda1)))) (sqrt.f64 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fabs.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 phi2 phi2)) 1) (sin.f64 (*.f64 1/2 phi1)))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 -1/2 (cos.f64 lambda2) 1/2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (log.f64 (exp.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3)) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cbrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) -1/2 1/2)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (fma.f64 -1/8 (*.f64 phi1 (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2)))) (fma.f64 -1/48 (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (pow.f64 phi1 3)) (fma.f64 1/2 (*.f64 phi1 (cos.f64 (*.f64 -1/2 phi2))) (sin.f64 (*.f64 -1/2 phi2))))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (-.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda1)) (pow.f64 (cbrt.f64 lambda1) 2) lambda1))) (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda1)) (pow.f64 (cbrt.f64 lambda1) 2) lambda1))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cos.f64 (+.f64 lambda2 lambda1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda2 lambda1)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda2 lambda1)))) (sin.f64 1)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (/.f64 (sqrt.f64 (-.f64 (cos.f64 (-.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2) (*.f64 (-.f64 lambda2 lambda1) 1/2))) (cos.f64 (-.f64 lambda2 lambda1)))) (sqrt.f64 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 3) (pow.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) 3)) (fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3) 1/3) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 (pow.f64 (cos.f64 (*.f64 1/2 phi1)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi1)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (*.f64 -1/2 lambda1)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (/.f64 (sqrt.f64 (-.f64 (cos.f64 (-.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2) (*.f64 (-.f64 lambda2 lambda1) 1/2))) (cos.f64 (-.f64 lambda2 lambda1)))) (sqrt.f64 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (-.f64 (*.f64 (sin.f64 (/.f64 lambda2 2)) (cos.f64 (/.f64 lambda1 2))) (*.f64 (cos.f64 (/.f64 lambda2 2)) (sin.f64 (/.f64 lambda1 2)))) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (log.f64 (exp.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1)))) 3))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (*.f64 lambda1 lambda1) (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))) (fma.f64 lambda1 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) -1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 phi2 phi2)) 1) (sin.f64 (*.f64 1/2 phi1)))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (log.f64 (+.f64 1 (expm1.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1)))) 2) (cbrt.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 (-.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2))) (*.f64 (cos.f64 (*.f64 -1/2 phi2)) (*.f64 phi1 (sin.f64 (*.f64 -1/2 phi2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 3) (pow.f64 (sin.f64 (*.f64 (-.f64 lambda2 lambda1) 1/2)) 3)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (fma.f64 -1/2 (*.f64 (cos.f64 (*.f64 1/2 phi1)) phi2) (sin.f64 (*.f64 1/2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 (pow.f64 (cos.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1)))) 3) 1/3)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (cos.f64 phi2))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 phi2)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 3) 1/3) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (log.f64 (exp.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (/.f64 (-.f64 1 (pow.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)) 2)) (+.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 1/2 phi1)) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))) (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 (-.f64 1 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 phi1)) (+.f64 (*.f64 lambda1 (*.f64 lambda1 (fma.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2) (*.f64 1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))))) (*.f64 lambda1 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))) -1))))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 phi2))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (-.f64 (*.f64 (sin.f64 (/.f64 lambda2 2)) (cos.f64 (/.f64 lambda1 2))) (*.f64 (cos.f64 (/.f64 lambda2 2)) (sin.f64 (/.f64 lambda1 2)))))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2)))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
Outputs
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (+.f64 (*.f64 (sin.f64 (*.f64 phi2 -1/2)) (cos.f64 (*.f64 (neg.f64 phi1) -1/2))) (*.f64 (cos.f64 (*.f64 phi2 -1/2)) (sin.f64 (*.f64 (neg.f64 phi1) -1/2)))) 2)))))))))
Results
TimeErrorSegmentsBranch
39.0ms23.5b1R
38.0ms23.5b1lambda1
38.0ms23.5b1lambda2
39.0ms23.5b1phi1
45.0ms23.5b1phi2
79.0ms23.5b1(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))))
55.0ms23.5b1(*.f64 2 (atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))))))
67.0ms23.5b1(atan2.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))) (sqrt.f64 (-.f64 1 (+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2)))))))
38.0ms23.5b1(+.f64 (pow.f64 (sin.f64 (/.f64 (-.f64 phi1 phi2) 2)) 2) (*.f64 (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))) (sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))))
40.0ms23.5b1(sin.f64 (/.f64 (-.f64 lambda1 lambda2) 2))
38.0ms23.5b1(/.f64 (-.f64 lambda1 lambda2) 2)
38.0ms23.5b1(-.f64 lambda1 lambda2)
Compiler

Compiled 6019 to 3364 computations (44.1% saved)

simplify6.0ms (0%)

Algorithm
egg-herbie
Rules
19×*-commutative_binary64
11×+-commutative_binary64
10×sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
054156
184152
2107152
3120152
4126152
5127152
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (+.f64 (*.f64 (sin.f64 (*.f64 phi2 -1/2)) (cos.f64 (*.f64 (neg.f64 phi1) -1/2))) (*.f64 (cos.f64 (*.f64 phi2 -1/2)) (sin.f64 (*.f64 (neg.f64 phi1) -1/2)))) 2)))))))))
Outputs
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (+.f64 (*.f64 (sin.f64 (*.f64 phi2 -1/2)) (cos.f64 (*.f64 (neg.f64 phi1) -1/2))) (*.f64 (cos.f64 (*.f64 phi2 -1/2)) (sin.f64 (*.f64 (neg.f64 phi1) -1/2)))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (+.f64 (*.f64 (sin.f64 (*.f64 phi2 -1/2)) (cos.f64 (*.f64 -1/2 (neg.f64 phi1)))) (*.f64 (cos.f64 (*.f64 phi2 -1/2)) (sin.f64 (*.f64 -1/2 (neg.f64 phi1))))) 2)))))))))
(*.f64 R (*.f64 2 (atan2.f64 (sqrt.f64 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)) (sin.f64 (/.f64 (-.f64 lambda2 lambda1) 2)))) (pow.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi2 phi1))) 2))) (sqrt.f64 (expm1.f64 (log1p.f64 (-.f64 1 (fma.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 1/2 (*.f64 1/2 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (pow.f64 (+.f64 (*.f64 (sin.f64 (*.f64 phi2 -1/2)) (cos.f64 (*.f64 phi1 1/2))) (*.f64 (cos.f64 (*.f64 phi2 -1/2)) (sin.f64 (*.f64 phi1 1/2)))) 2)))))))))

end56.0ms (0.2%)

Stop Event
fuel
Compiler

Compiled 198 to 130 computations (34.3% saved)

Profiling

Loading profile data...