Details

Time bar (total: 56.0s)

analyze1.9s (3.4%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
0%0%99.8%0.2%0%0%0%3
0%0%99.8%0.2%0%0%0%4
0%0%99.8%0.2%0%0%0%5
0%0%99.8%0.2%0%0%0%6
0%0%99.8%0.2%0%0%0%7
0%0%99.8%0.2%0%0%0%8
7.8%7.8%92%0.2%0%0%0%9
7.8%7.8%92%0.2%0%0%0%10
10.2%10.1%89.7%0.2%0%0%0%11
10.2%10.1%89.7%0.2%0%0%0%12
Compiler

Compiled 29 to 18 computations (37.9% saved)

sample13.7s (24.5%)

Results
11.2s5553×body1024valid
1.2s1298×body512valid
751.0ms1223×body256valid
561.0ms182×body2048valid
Bogosity

preprocess115.0ms (0.2%)

Algorithm
egg-herbie
Rules
1540×rational.json-simplify-35
1096×rational.json-simplify-41
1052×rational.json-simplify-48
748×rational.json-simplify-52
628×rational.json-simplify-51
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
073539
1139539
2249539
3406539
4642539
51299539
62607539
75783539
87129539
97790539
044
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
3
Outputs
0
1
2
3
Call 2
Inputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (cos.f64 (-.f64 phi1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 phi2 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (cos.f64 (-.f64 phi2 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 phi1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 phi2)) (cos.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (cos.f64 (-.f64 lambda1 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (-.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (cos.f64 (-.f64 phi1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 phi1 lambda2))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (cos.f64 (-.f64 phi1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 phi1 lambda2))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (cos.f64 (-.f64 phi1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 phi1 lambda2))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 phi1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 phi2 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (cos.f64 (-.f64 phi2 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 lambda1) (sin.f64 (-.f64 phi2 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (cos.f64 (-.f64 phi2 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 lambda1) (sin.f64 (-.f64 phi2 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 (-.f64 phi2 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 phi1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 phi1))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)) (cos.f64 (-.f64 lambda1 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 phi1))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 phi1))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (cos.f64 (-.f64 lambda1 phi1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 phi2)) (cos.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (cos.f64 (-.f64 lambda1 phi2)))))
(atan2.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (cos.f64 (-.f64 lambda1 phi2)))))
(atan2.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 (-.f64 lambda1 phi2))))))
(atan2.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (-.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (-.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (-.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Compiler

Compiled 32 to 21 computations (34.4% saved)

simplify131.0ms (0.2%)

Algorithm
egg-herbie
Rules
2034×rational.json-simplify-35
1062×rational.json-simplify-52
1036×rational.json-simplify-41
978×rational.json-simplify-48
928×rational.json-simplify-26
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02077
13877
26777
311177
419477
537477
683777
7219677
8486877
9585177
10665177
11743777
Stop Event
node limit
Counts
1 → 4
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))

eval1.0ms (0%)

Compiler

Compiled 100 to 29 computations (71% saved)

prune2.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New224
Fresh101
Picked000
Done000
Total325
Error
14.1b
Counts
5 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
14.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
14.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Compiler

Compiled 56 to 34 computations (39.3% saved)

localize31.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.3b
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
2.7b
(cos.f64 (-.f64 lambda1 lambda2))
2.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 96 to 17 computations (82.3% saved)

series11.0ms (0%)

Counts
4 → 76
Calls

27 calls:

TimeVariablePointExpression
2.0ms
phi1
@-inf
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
1.0ms
phi2
@inf
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
1.0ms
lambda1
@0
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
1.0ms
phi1
@inf
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
1.0ms
lambda1
@inf
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))

rewrite86.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1744×bool.json-1
1744×bool.json-2
1710×rational.json-1
1298×bool.json-3
682×rational.json-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01558
115458
244058
3101358
4228158
5566658
Stop Event
node limit
Counts
4 → 54
Calls
Call 1
Inputs
(sin.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (-.f64 lambda1 lambda2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sin.f64 (-.f64 lambda1 lambda2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (sin.f64 (-.f64 lambda2 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (-.f64 lambda2 lambda1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 (-.f64 lambda2 lambda1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4)) (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (sin.f64 (-.f64 lambda2 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x and (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (-.f64 lambda1 lambda2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 (-.f64 lambda1 lambda2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4)) (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x and (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4))) (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) 4))) (*.f64 2 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))))

simplify167.0ms (0.3%)

Algorithm
egg-herbie
Rules
1800×rational.json-simplify-35
1366×rational.json-simplify-26
1082×rational.json-simplify-2
838×rational.json-simplify-51
794×rational.json-simplify-53
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02493422
15913250
213373144
323642998
440642998
550952998
666872998
776492998
Stop Event
node limit
Counts
130 → 205
Calls
Call 1
Inputs
(sin.f64 (neg.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (neg.f64 lambda2))
(+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 lambda1)
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1)))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1))))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 7))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 lambda1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(sin.f64 phi2)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 phi1 4) (sin.f64 phi2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 phi1 6) (sin.f64 phi2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 phi1 4) (sin.f64 phi2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(*.f64 (cos.f64 phi1) phi2)
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (*.f64 (cos.f64 phi1) phi2))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 phi1) (pow.f64 phi2 7))) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5))))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) 0)
(+.f64 0 (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1))))
(-.f64 (sin.f64 (-.f64 lambda1 lambda2)) 0)
(-.f64 0 (sin.f64 (-.f64 lambda2 lambda1)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1)
(*.f64 1 (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1/2))
(*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1/2)
(*.f64 4 (/.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4))
(*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4) 1/4)
(*.f64 1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1/2) 2)
(*.f64 (sin.f64 (-.f64 lambda2 lambda1)) -1)
(/.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1)
(/.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 2)
(/.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4) 4)
(/.f64 (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4)) 8)
(/.f64 (sin.f64 (-.f64 lambda2 lambda1)) -1)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4)) (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4))) 16)
(neg.f64 (sin.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 0)
(+.f64 0 (cos.f64 (-.f64 lambda1 lambda2)))
(-.f64 (cos.f64 (-.f64 lambda1 lambda2)) 0)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)
(*.f64 1 (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) 1/2)
(*.f64 4 (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4) 1/4)
(*.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2) 2)
(/.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) 2)
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4) 4)
(/.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4)) (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4))) 16)
(neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 0)
(+.f64 0 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 0)
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 1)
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 2)) 2)
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4)) 4)
(/.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4))) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4))) (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4)))) 16)
(+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 0)
(+.f64 0 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 0)
(/.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1)
(/.f64 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) 2)) 2)
(/.f64 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) 4)) 4)
(/.f64 (*.f64 2 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) 4))) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) 4))) (*.f64 2 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) 4)))) 16)
Outputs
(sin.f64 (neg.f64 lambda2))
(neg.f64 (sin.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))
(+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 lambda1 2) -1/2))))
(+.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 lambda1 2))))
(+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 lambda1 2)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 lambda1 2) -1/2))) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 3) -1/6))))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (cos.f64 lambda2) (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/6 (pow.f64 lambda1 3))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 lambda1 2)))))
(+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) lambda1))))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(sin.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))
(+.f64 (sin.f64 lambda1) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) -1)))
(+.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (neg.f64 lambda2)))
(+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 2))) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) -1))))
(+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (cos.f64 lambda1) (neg.f64 lambda2)) (*.f64 (sin.f64 lambda1) (*.f64 (pow.f64 lambda2 2) -1/2))))
(+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (*.f64 -1/2 (pow.f64 lambda2 2)))))
(+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1)))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(+.f64 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) -1)) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 2))) (*.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3))))))
(+.f64 (sin.f64 lambda1) (+.f64 (+.f64 (*.f64 (sin.f64 lambda1) (*.f64 (pow.f64 lambda2 2) -1/2)) (*.f64 (cos.f64 lambda1) (*.f64 1/6 (pow.f64 lambda2 3)))) (*.f64 (cos.f64 lambda1) (neg.f64 lambda2))))
(+.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (*.f64 -1/2 (pow.f64 lambda2 2))))) (*.f64 (cos.f64 lambda1) (*.f64 1/6 (pow.f64 lambda2 3))))
(+.f64 (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2)))))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (neg.f64 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (neg.f64 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (neg.f64 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (neg.f64 lambda2) lambda1))
(cos.f64 (neg.f64 lambda2))
(cos.f64 lambda2)
(+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 -1)))
(+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 lambda1)))
(+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))
(+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))
(+.f64 (cos.f64 lambda2) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 -1)) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 2) -1/2))))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 lambda1)) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (cos.f64 lambda2)))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 lambda1)) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))
(+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))
(+.f64 (cos.f64 lambda2) (+.f64 (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 -1)) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 2) -1/2))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 lambda1 3) 1/6))))
(+.f64 (cos.f64 lambda2) (+.f64 (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 lambda1)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 lambda1 3) 1/6))))
(+.f64 (cos.f64 lambda2) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 lambda1)) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 lambda1 3) 1/6)))))
(+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (pow.f64 lambda1 3) 1/6) (neg.f64 lambda1))) (cos.f64 lambda2)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))
(cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))
(cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))
(cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))
(cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))
(cos.f64 lambda1)
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))
(+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1)))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2)))))
(+.f64 (cos.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))) (*.f64 lambda2 (sin.f64 lambda1))))
(+.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2)))))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1))))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (+.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2)))) (*.f64 -1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)))))
(+.f64 (+.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2)))) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 -1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)))))
(+.f64 (+.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2)))) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (cos.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (+.f64 (neg.f64 lambda2) lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (+.f64 (neg.f64 lambda2) lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (+.f64 (neg.f64 lambda2) lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (+.f64 (neg.f64 lambda2) lambda1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi1 5) 1/120)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)))))
(+.f64 (*.f64 (pow.f64 phi1 3) (*.f64 -1/6 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 7))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi1 7) -1/5040)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi1 5) 1/120)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))) (+.f64 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) -1/5040)) (*.f64 (pow.f64 phi1 3) (*.f64 -1/6 (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))
(*.f64 (cos.f64 lambda2) (sin.f64 phi1))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)))))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 lambda1))))
(*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)))) (+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 2) (sin.f64 phi1))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 lambda1))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 lambda1)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 2) (sin.f64 phi1)))) (+.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1)) 1/6)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 lambda1))) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 1/6 (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1))))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))))) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1))) (neg.f64 (*.f64 lambda1 (sin.f64 phi1))))))
(+.f64 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))) (*.f64 (sin.f64 phi1) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (pow.f64 lambda1 3) 1/6) (neg.f64 lambda1)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 lambda1))
(*.f64 (cos.f64 lambda1) (sin.f64 phi1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (sin.f64 phi1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (sin.f64 phi1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(+.f64 (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (+.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2)))))
(+.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(+.f64 (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (+.f64 (+.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))))) (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2)))) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 -1/6 (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (pow.f64 lambda2 3))))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(+.f64 (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2)))) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (neg.f64 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (neg.f64 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (neg.f64 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (neg.f64 lambda2) lambda1)) (sin.f64 phi1))
(sin.f64 phi2)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))
(+.f64 (sin.f64 phi2) (*.f64 -1/2 (*.f64 (sin.f64 phi2) (pow.f64 phi1 2))))
(+.f64 (sin.f64 phi2) (*.f64 (pow.f64 phi1 2) (*.f64 -1/2 (sin.f64 phi2))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 phi1 4) (sin.f64 phi2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi2) (pow.f64 phi1 2))) (+.f64 (sin.f64 phi2) (*.f64 1/24 (*.f64 (sin.f64 phi2) (pow.f64 phi1 4)))))
(+.f64 (sin.f64 phi2) (+.f64 (*.f64 (sin.f64 phi2) (*.f64 (pow.f64 phi1 4) 1/24)) (*.f64 (pow.f64 phi1 2) (*.f64 -1/2 (sin.f64 phi2)))))
(+.f64 (sin.f64 phi2) (+.f64 (*.f64 (pow.f64 phi1 2) (*.f64 -1/2 (sin.f64 phi2))) (*.f64 (sin.f64 phi2) (*.f64 1/24 (pow.f64 phi1 4)))))
(+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi2) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 phi1 6) (sin.f64 phi2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 phi1 4) (sin.f64 phi2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi2) (pow.f64 phi1 4))) (+.f64 (+.f64 (sin.f64 phi2) (*.f64 -1/2 (*.f64 (sin.f64 phi2) (pow.f64 phi1 2)))) (*.f64 -1/720 (*.f64 (sin.f64 phi2) (pow.f64 phi1 6)))))
(+.f64 (*.f64 (sin.f64 phi2) (*.f64 (pow.f64 phi1 4) 1/24)) (+.f64 (+.f64 (sin.f64 phi2) (*.f64 (pow.f64 phi1 2) (*.f64 -1/2 (sin.f64 phi2)))) (*.f64 (pow.f64 phi1 6) (*.f64 (sin.f64 phi2) -1/720))))
(+.f64 (*.f64 (sin.f64 phi2) (*.f64 1/24 (pow.f64 phi1 4))) (+.f64 (*.f64 (pow.f64 phi1 2) (*.f64 -1/2 (sin.f64 phi2))) (+.f64 (sin.f64 phi2) (*.f64 (pow.f64 phi1 6) (*.f64 (sin.f64 phi2) -1/720)))))
(+.f64 (sin.f64 phi2) (+.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (*.f64 -1/720 (pow.f64 phi1 6)))) (*.f64 (sin.f64 phi2) (*.f64 1/24 (pow.f64 phi1 4)))))
(*.f64 (cos.f64 phi1) phi2)
(*.f64 phi2 (cos.f64 phi1))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (*.f64 (cos.f64 phi1) phi2))
(+.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))))
(*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5)))))
(+.f64 (*.f64 (pow.f64 phi2 3) (*.f64 (cos.f64 phi1) -1/6)) (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 1/120 (pow.f64 phi2 5)))))
(*.f64 (cos.f64 phi1) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) (+.f64 phi2 (*.f64 1/120 (pow.f64 phi2 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 phi1) (pow.f64 phi2 7))) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5))))))
(+.f64 (*.f64 phi2 (cos.f64 phi1)) (+.f64 (+.f64 (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5))) (*.f64 -1/5040 (*.f64 (cos.f64 phi1) (pow.f64 phi2 7)))) (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)))))
(+.f64 (+.f64 (*.f64 (cos.f64 phi1) (*.f64 1/120 (pow.f64 phi2 5))) (*.f64 (cos.f64 phi1) (*.f64 -1/5040 (pow.f64 phi2 7)))) (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))))
(+.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 -1/5040 (pow.f64 phi2 7)) (*.f64 1/120 (pow.f64 phi2 5)))))
(*.f64 (cos.f64 phi1) (+.f64 (*.f64 -1/5040 (pow.f64 phi2 7)) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) (+.f64 phi2 (*.f64 1/120 (pow.f64 phi2 5))))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) 0)
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 0 (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1))))
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 (sin.f64 (-.f64 lambda1 lambda2)) 0)
(sin.f64 (-.f64 lambda1 lambda2))
(-.f64 0 (sin.f64 (-.f64 lambda2 lambda1)))
(sin.f64 (-.f64 lambda1 lambda2))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1)
(sin.f64 (-.f64 lambda1 lambda2))
(*.f64 1 (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1/2))
(sin.f64 (-.f64 lambda1 lambda2))
(*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1/2)
(sin.f64 (-.f64 lambda1 lambda2))
(*.f64 4 (/.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4))
(sin.f64 (-.f64 lambda1 lambda2))
(*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4) 1/4)
(sin.f64 (-.f64 lambda1 lambda2))
(*.f64 1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(sin.f64 (-.f64 lambda1 lambda2))
(*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1/2) 2)
(sin.f64 (-.f64 lambda1 lambda2))
(*.f64 (sin.f64 (-.f64 lambda2 lambda1)) -1)
(sin.f64 (-.f64 lambda1 lambda2))
(/.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1)
(sin.f64 (-.f64 lambda1 lambda2))
(/.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 2)
(sin.f64 (-.f64 lambda1 lambda2))
(/.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4) 4)
(sin.f64 (-.f64 lambda1 lambda2))
(/.f64 (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4)) 8)
(sin.f64 (-.f64 lambda1 lambda2))
(/.f64 (sin.f64 (-.f64 lambda2 lambda1)) -1)
(sin.f64 (-.f64 lambda1 lambda2))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4)) (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 4))) 16)
(sin.f64 (-.f64 lambda1 lambda2))
(neg.f64 (sin.f64 (-.f64 lambda2 lambda1)))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 0)
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 0 (cos.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(-.f64 (cos.f64 (-.f64 lambda1 lambda2)) 0)
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 1 (cos.f64 (-.f64 lambda1 lambda2)))
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2))
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) 1/2)
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 4 (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4))
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4) 1/4)
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2))
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2) 2)
(cos.f64 (-.f64 lambda1 lambda2))
(/.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)
(cos.f64 (-.f64 lambda1 lambda2))
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) 2)
(cos.f64 (-.f64 lambda1 lambda2))
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4) 4)
(cos.f64 (-.f64 lambda1 lambda2))
(/.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4)) 8)
(cos.f64 (-.f64 lambda1 lambda2))
(/.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4)) (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 4))) 16)
(cos.f64 (-.f64 lambda1 lambda2))
(neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))
(cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))
(cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 0)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(+.f64 0 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 0)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 1)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 2)) 2)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4)) 4)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(/.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4))) 8)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(/.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4))) (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4)))) 16)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 0)
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(+.f64 0 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 0)
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(/.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1)
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(/.f64 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) 2)) 2)
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(/.f64 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) 4)) 4)
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(/.f64 (*.f64 2 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) 4))) 8)
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(/.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) 4))) (*.f64 2 (*.f64 (cos.f64 phi1) (*.f64 (sin.f64 phi2) 4)))) 16)
(*.f64 (sin.f64 phi2) (cos.f64 phi1))

localize28.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.3b
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
2.7b
(cos.f64 (-.f64 lambda1 lambda2))
2.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 96 to 17 computations (82.3% saved)

series8.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
phi1
@-inf
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
1.0ms
phi2
@inf
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
1.0ms
phi1
@inf
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
1.0ms
phi1
@0
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
1.0ms
lambda1
@0
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))

rewrite68.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
1298×bool.json-1
1298×bool.json-2
1264×rational.json-1
1264×rational.json-2
1264×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01331
113431
239031
387231
4187831
5439831
Stop Event
node limit
Counts
1 → 10
Calls
Call 1
Inputs
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) 4)))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) 4))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))))

simplify140.0ms (0.2%)

Algorithm
egg-herbie
Rules
1826×rational.json-simplify-35
1310×rational.json-simplify-2
1212×rational.json-simplify-48
1002×rational.json-simplify-53
796×rational.json-simplify-41
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01492784
13932654
28262504
316482376
431052376
552242376
662652376
778802376
Stop Event
node limit
Counts
58 → 90
Calls
Call 1
Inputs
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 0)
(+.f64 0 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2))))
(-.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 0)
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 1)
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 2))) 2)
(/.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) 4)) 4)
(/.f64 (*.f64 2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) 4))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) 4)))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) 4)))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) 4))))) 32)
Outputs
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) -1/6)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) -1/6))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) 1/120)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) -1/6))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/120)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) -1/6)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) 1/120)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) -1/6)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5))))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) -1/6)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) 1/120)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)) -1/5040)))))
(+.f64 (+.f64 (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/120)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/5040 (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) 1/120)) (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) -1/6)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 phi1 7) -1/5040)) (*.f64 phi1 (cos.f64 phi2)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) -1/6)) (+.f64 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) 1/120)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/5040 (pow.f64 phi1 7)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 -1/5040 (pow.f64 phi1 7))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)) -1/2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (*.f64 (sin.f64 phi1) -1/2))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)) -1/2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)) 1/24))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (pow.f64 phi2 2) (*.f64 (sin.f64 phi1) -1/2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) 1/24)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 (pow.f64 phi2 2) (*.f64 (sin.f64 phi1) -1/2)) (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 phi2 4))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 phi2 4))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)) -1/2)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)) 1/24)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)) -1/720)))))
(+.f64 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))) (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (pow.f64 phi2 2) (*.f64 (sin.f64 phi1) -1/2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) 1/24))))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 6) (*.f64 (sin.f64 phi1) -1/720))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (pow.f64 phi2 2) (*.f64 (sin.f64 phi1) -1/2)) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (pow.f64 phi2 6) (*.f64 (sin.f64 phi1) -1/720))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (sin.f64 phi1) (*.f64 -1/720 (pow.f64 phi2 6)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 lambda2))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (neg.f64 (*.f64 lambda1 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) -1/2)) (*.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1)))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (+.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2))))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) -1/2))))
(+.f64 (*.f64 (*.f64 lambda1 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (sin.f64 lambda2) 1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) -1/2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(+.f64 (*.f64 (*.f64 lambda1 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2))) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))))))
(+.f64 (*.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) -1/2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1))) 1/6)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (+.f64 (+.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2))))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) -1/2))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))) 1/6))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) -1/2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 1/6 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (pow.f64 lambda1 3))) (neg.f64 (*.f64 lambda1 (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 1/6 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (pow.f64 lambda1 3))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (neg.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)))) (*.f64 (sin.f64 phi1) (neg.f64 (*.f64 lambda1 (cos.f64 phi2)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 lambda1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 lambda2 2))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 lambda2 2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) -1/2)))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (pow.f64 lambda2 3)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 lambda2 2)))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 lambda2 2)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (pow.f64 lambda2 3))))) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))) -1/6)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) -1/2))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda2 2))))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 0)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 0 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 0)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))) 1)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 2))) 2)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(/.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) 4)) 4)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(/.f64 (*.f64 2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) 4))) 8)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) 4)))) 16)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) 4)))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) 4))))) 32)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))

eval312.0ms (0.6%)

Compiler

Compiled 15467 to 4376 computations (71.7% saved)

prune293.0ms (0.5%)

Pruning

25 alts after pruning (25 fresh and 0 done)

PrunedKeptTotal
New41425439
Fresh000
Picked101
Done101
Total41625441
Error
10.2b
Counts
441 → 25
Alt Table
Click to see full alt table
StatusErrorProgram
30.2b
(atan2.f64 (*.f64 (+.f64 (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
30.2b
(atan2.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) -1)) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 2))) (*.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
27.9b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
28.5b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
26.4b
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 lambda1 2) -1/2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
26.6b
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
22.4b
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
28.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
32.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi2) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
34.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
29.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1)))))))
24.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
28.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
22.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))
27.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
32.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
21.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
19.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
21.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
34.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))
32.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
34.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
21.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
33.0b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
35.3b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Compiler

Compiled 1676 to 1088 computations (35.1% saved)

localize30.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.2b
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
2.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 86 to 17 computations (80.2% saved)

series7.0ms (0%)

Counts
2 → 44
Calls

15 calls:

TimeVariablePointExpression
2.0ms
lambda1
@0
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
1.0ms
phi1
@inf
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
0.0ms
phi2
@inf
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
0.0ms
phi1
@0
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
0.0ms
phi2
@0
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))

rewrite73.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
1546×bool.json-1
1546×bool.json-2
1512×rational.json-1
1512×rational.json-2
1512×rational.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01436
114336
240736
392436
4209436
5513636
Stop Event
node limit
Counts
2 → 16
Calls
Call 1
Inputs
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4))) (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 4))) (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))))

simplify170.0ms (0.3%)

Algorithm
egg-herbie
Rules
2756×rational.json-simplify-2
1596×rational.json-simplify-35
932×rational.json-simplify-53
866×rational.json-simplify-43
756×rational.json-simplify-1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01462042
13701994
27341888
313581772
430721772
541811772
656091772
763081772
868451772
970561772
Stop Event
node limit
Counts
60 → 105
Calls
Call 1
Inputs
(*.f64 phi1 (cos.f64 lambda2))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 lambda2))) (*.f64 phi1 (cos.f64 lambda2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 lambda2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 lambda2))) (*.f64 phi1 (cos.f64 lambda2))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (cos.f64 lambda2))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 lambda2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 lambda2))) (*.f64 phi1 (cos.f64 lambda2)))))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 phi1))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (sin.f64 phi1))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 phi1)))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (sin.f64 phi1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 phi1))) (*.f64 -1/720 (*.f64 (pow.f64 lambda2 6) (sin.f64 phi1))))))
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3)))))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) 0)
(+.f64 0 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(-.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) 0)
(/.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) 1)
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 2)) 2)
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4)) 4)
(/.f64 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4))) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4))) (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4)))) 16)
(+.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 0)
(+.f64 0 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(-.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 0)
(/.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 1)
(/.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 2)) 2)
(/.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 4)) 4)
(/.f64 (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 4))) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 4))) (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 4)))) 16)
Outputs
(*.f64 phi1 (cos.f64 lambda2))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 lambda2))) (*.f64 phi1 (cos.f64 lambda2)))
(+.f64 (*.f64 phi1 (cos.f64 lambda2)) (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 phi1 3))))
(+.f64 (*.f64 phi1 (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 phi1 3) -1/6)))
(*.f64 (cos.f64 lambda2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 lambda2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 lambda2))) (*.f64 phi1 (cos.f64 lambda2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 phi1 3))) (+.f64 (*.f64 phi1 (cos.f64 lambda2)) (*.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 phi1 5)))))
(+.f64 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 phi1 3) -1/6)) (+.f64 (*.f64 phi1 (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 phi1 5) 1/120))))
(+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 lambda2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (cos.f64 lambda2) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (cos.f64 lambda2))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 lambda2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 lambda2))) (*.f64 phi1 (cos.f64 lambda2)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 phi1 3))) (+.f64 (+.f64 (*.f64 phi1 (cos.f64 lambda2)) (*.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 phi1 5)))) (*.f64 -1/5040 (*.f64 (cos.f64 lambda2) (pow.f64 phi1 7)))))
(+.f64 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 phi1 3) -1/6)) (+.f64 (+.f64 (*.f64 phi1 (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 phi1 5) 1/120))) (*.f64 (cos.f64 lambda2) (*.f64 -1/5040 (pow.f64 phi1 7)))))
(+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (*.f64 (cos.f64 lambda2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))) (*.f64 (cos.f64 lambda2) (*.f64 -1/5040 (pow.f64 phi1 7)))))
(+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5))))))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 phi1))))
(+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda2 2))))
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 2) -1/2)))
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 -1/2 (pow.f64 lambda2 2))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (sin.f64 phi1))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 phi1)))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 lambda2 4))) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda2 2)))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 2) -1/2)) (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 lambda2 4)))))
(+.f64 (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 -1/2 (pow.f64 lambda2 2)))) (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 lambda2 4))))
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 lambda2 4)) (*.f64 -1/2 (pow.f64 lambda2 2)))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (sin.f64 phi1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 phi1))) (*.f64 -1/720 (*.f64 (pow.f64 lambda2 6) (sin.f64 phi1))))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 lambda2 4))) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda2 2))) (*.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 lambda2 6)))) (sin.f64 phi1)))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 2) -1/2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 lambda2 4))) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 6) -1/720)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 -1/2 (pow.f64 lambda2 2))) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 lambda2 4))) (*.f64 (sin.f64 phi1) (*.f64 -1/720 (pow.f64 lambda2 6))))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/720 (pow.f64 lambda2 6)) (*.f64 -1/2 (pow.f64 lambda2 2)))) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 lambda2 4)))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 lambda2 4))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (pow.f64 lambda2 2)) (*.f64 -1/720 (pow.f64 lambda2 6))))))
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)) -1/2))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (cos.f64 phi2) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)) (*.f64 (sin.f64 lambda2) 1/2)))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (pow.f64 lambda1 2) (*.f64 (sin.f64 lambda2) 1/2)) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))))
(*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (pow.f64 lambda1 2) (*.f64 (sin.f64 lambda2) 1/2)))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3)))))))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)) -1/2)) (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 3) (cos.f64 phi2)))))))
(+.f64 (+.f64 (*.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2)))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)) (*.f64 (sin.f64 lambda2) 1/2)) (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 3) -1/6))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (pow.f64 lambda1 2) (*.f64 (sin.f64 lambda2) 1/2)) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))) (neg.f64 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))) (neg.f64 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))) (neg.f64 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))) (neg.f64 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) -1)))
(+.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 (neg.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (neg.f64 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
(+.f64 (*.f64 lambda2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) -1)) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))))
(+.f64 (*.f64 lambda2 (neg.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(+.f64 (*.f64 (neg.f64 lambda2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda1) (*.f64 -1/2 (pow.f64 lambda2 2))) (+.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (neg.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda1) (*.f64 -1/2 (pow.f64 lambda2 2))) (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))))
(+.f64 (*.f64 lambda2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) -1)) (+.f64 (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))) (*.f64 1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3))))))
(+.f64 (*.f64 lambda2 (neg.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 3) 1/6))))
(+.f64 (*.f64 (neg.f64 lambda2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda1) (*.f64 -1/2 (pow.f64 lambda2 2))))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda1) (*.f64 -1/2 (pow.f64 lambda2 2))))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2)))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (pow.f64 phi2 2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2)) (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)))))
(+.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (*.f64 -1/720 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)))))
(+.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)))))
(+.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (pow.f64 phi2 2)))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) 0)
(*.f64 (cos.f64 lambda2) (sin.f64 phi1))
(+.f64 0 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 lambda2) (sin.f64 phi1))
(-.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) 0)
(*.f64 (cos.f64 lambda2) (sin.f64 phi1))
(/.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) 1)
(*.f64 (cos.f64 lambda2) (sin.f64 phi1))
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 2)) 2)
(*.f64 (cos.f64 lambda2) (sin.f64 phi1))
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4)) 4)
(*.f64 (cos.f64 lambda2) (sin.f64 phi1))
(/.f64 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4))) 8)
(*.f64 (cos.f64 lambda2) (sin.f64 phi1))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4))) (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4)))) 16)
(*.f64 (cos.f64 lambda2) (sin.f64 phi1))
(+.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 0)
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 0 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(-.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 0)
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 1)
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 2)) 2)
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 4)) 4)
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 4))) 8)
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 4))) (*.f64 2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) 4)))) 16)
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))

localize81.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
0.3b
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
2.7b
(cos.f64 (-.f64 lambda1 lambda2))
2.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 83 to 15 computations (81.9% saved)

localize55.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.3b
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
2.7b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 95 to 18 computations (81.1% saved)

series2.0ms (0%)

Counts
1 → 12
Calls

6 calls:

TimeVariablePointExpression
1.0ms
phi2
@inf
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
0.0ms
lambda2
@0
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
0.0ms
phi2
@0
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
0.0ms
lambda2
@-inf
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
0.0ms
lambda2
@inf
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))

rewrite78.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
1228×bool.json-1
1228×bool.json-2
1190×rational.json-1
1190×rational.json-2
1190×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
19919
231719
372719
4166819
5405019
Stop Event
node limit
Counts
1 → 11
Calls
Call 1
Inputs
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -1/2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -4)))) (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -4))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)))))))

simplify193.0ms (0.3%)

Algorithm
egg-herbie
Rules
2662×rational.json-simplify-2
1952×rational.json-simplify-35
1144×rational.json-simplify-53
1020×rational.json-simplify-1
796×rational.json-simplify-26
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
086749
1198741
2374705
3725645
41801645
53110645
64271645
75515645
86305645
96953645
107311645
Stop Event
node limit
Counts
23 → 55
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 lambda2 (cos.f64 phi2)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))) (*.f64 -1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 phi2)))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))) (+.f64 (*.f64 1/5040 (*.f64 (pow.f64 lambda2 7) (cos.f64 phi2))) (*.f64 -1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 phi2))))))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(sin.f64 (neg.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 2))))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 2)))))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 6))) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 2))))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 0)
(+.f64 0 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -1/2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -1/2)))
(-.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 0)
(/.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 1)
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -2)) 2)
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -4)) 4)
(/.f64 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -4))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -4)))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -4)))) (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -4))))) 32)
(neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
Outputs
(*.f64 -1 (*.f64 lambda2 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (neg.f64 lambda2))
(neg.f64 (*.f64 lambda2 (cos.f64 phi2)))
(*.f64 lambda2 (neg.f64 (cos.f64 phi2)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (*.f64 1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 3))))
(+.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 3) 1/6)))
(+.f64 (neg.f64 (*.f64 lambda2 (cos.f64 phi2))) (*.f64 1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 3))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2)))
(*.f64 (cos.f64 phi2) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))) (*.f64 -1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 phi2)))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 3))) (*.f64 -1/120 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 5)))))
(+.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 3) 1/6)) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 5) -1/120))))
(+.f64 (neg.f64 (*.f64 lambda2 (cos.f64 phi2))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 3))) (*.f64 (cos.f64 phi2) (*.f64 -1/120 (pow.f64 lambda2 5)))))
(+.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (*.f64 -1/120 (pow.f64 lambda2 5)))))
(+.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/120 (pow.f64 lambda2 5)) (*.f64 1/6 (pow.f64 lambda2 3)))))
(+.f64 (neg.f64 (*.f64 lambda2 (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/120 (pow.f64 lambda2 5)) (*.f64 1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))) (+.f64 (*.f64 1/5040 (*.f64 (pow.f64 lambda2 7) (cos.f64 phi2))) (*.f64 -1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 phi2))))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 3))) (+.f64 (*.f64 -1/120 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 5))) (*.f64 1/5040 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 7))))))
(+.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 3) 1/6)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 5) -1/120)) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 7) 1/5040)))))
(+.f64 (neg.f64 (*.f64 lambda2 (cos.f64 phi2))) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 3))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 -1/120 (pow.f64 lambda2 5))) (*.f64 1/5040 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 7))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/120 (pow.f64 lambda2 5)) (*.f64 1/5040 (pow.f64 lambda2 7)))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/120 (pow.f64 lambda2 5)) (*.f64 1/5040 (pow.f64 lambda2 7)))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/120 (pow.f64 lambda2 5)) (*.f64 1/6 (pow.f64 lambda2 3)))) (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 lambda2) (*.f64 1/5040 (pow.f64 lambda2 7)))))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(*.f64 (sin.f64 (*.f64 -1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(sin.f64 (neg.f64 lambda2))
(neg.f64 (sin.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 2))))
(+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2)))
(+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 phi2 2))))
(+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 phi2 2) (*.f64 (sin.f64 lambda2) 1/2)))
(*.f64 (sin.f64 lambda2) (+.f64 -1 (*.f64 (pow.f64 phi2 2) 1/2)))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 2)))))
(+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 phi2 4) 1/24))))
(+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))
(+.f64 (*.f64 (sin.f64 lambda2) (*.f64 (pow.f64 phi2 2) 1/2)) (*.f64 (sin.f64 lambda2) (+.f64 -1 (*.f64 (pow.f64 phi2 4) -1/24))))
(+.f64 (*.f64 (sin.f64 lambda2) (*.f64 (pow.f64 phi2 2) 1/2)) (*.f64 (sin.f64 lambda2) (-.f64 -1 (*.f64 1/24 (pow.f64 phi2 4)))))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 6))) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 phi2 2))))))
(+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 phi2 4) 1/24)) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 phi2 6) -1/720)))))
(+.f64 (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/720 (pow.f64 phi2 6)))) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 lambda2))))
(+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (pow.f64 phi2 4) (*.f64 (sin.f64 lambda2) -1/24)) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 -1/2 (pow.f64 phi2 2))))))
(+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 0)
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(+.f64 0 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -1/2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -1/2)))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(-.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 0)
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(/.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 1)
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -2)) 2)
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -4)) 4)
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(/.f64 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -4))) 8)
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -4)))) 16)
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -4)))) (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) -4))))) 32)
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))

localize84.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.2b
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
2.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 119 to 20 computations (83.2% saved)

series7.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
phi1
@inf
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
1.0ms
phi2
@inf
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
1.0ms
lambda1
@inf
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
1.0ms
lambda1
@-inf
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
1.0ms
phi1
@0
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))

rewrite130.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1508×bool.json-1
1508×bool.json-2
1474×rational.json-1
1474×rational.json-2
1474×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01541
115641
244241
398741
4217541
5510341
Stop Event
node limit
Counts
1 → 8
Calls
Call 1
Inputs
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) 4)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) 4)))) (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) 4))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))))))

simplify297.0ms (0.5%)

Algorithm
egg-herbie
Rules
2170×rational.json-simplify-2
1656×rational.json-simplify-35
1234×rational.json-simplify-1
968×rational.json-simplify-26
892×rational.json-simplify-43
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01122964
12782778
25732664
311172552
425482552
536062552
643392552
748672552
861182552
968012552
1076622552
1178622552
Stop Event
node limit
Counts
56 → 75
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/720 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1/6 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))) 0)
(+.f64 0 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(-.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))) 0)
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))) 1)
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) 2))) 2)
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) 4))) 4)
(/.f64 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) 4)))) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) 4)))) (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) 4))))) 16)
Outputs
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) -1/6)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 phi1 3) -1/6))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) 1/120)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) -1/6))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 phi1 3) -1/6)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 phi1 5) 1/120)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5))))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 1/120 (pow.f64 phi1 5))) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) -1/6)) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) 1/120)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)) -1/5040)))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 -1/5040 (*.f64 (cos.f64 phi2) (pow.f64 phi1 7))))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 phi1 3) -1/6))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 phi1 7) -1/5040)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 phi1 5) 1/120))))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 -1/5040 (pow.f64 phi1 7))) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 -1/5040 (pow.f64 phi1 7))) (*.f64 (cos.f64 phi2) (*.f64 1/120 (pow.f64 phi1 5))))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)) -1/2)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) -1/2))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 -1/2 (pow.f64 phi2 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)) -1/2)) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)) 1/24))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (sin.f64 phi1) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) -1/2)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 phi2 4))))))
(+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/720 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)) -1/2)) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)) -1/720)) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)) 1/24)))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (sin.f64 phi1) (*.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) -1/2))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) -1/720))))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 -1/720 (pow.f64 phi2 6))) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 phi2 4)))))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 -1/720 (pow.f64 phi2 6))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 phi2 4)))))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (sin.f64 phi1))))
(*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 lambda1) (*.f64 (*.f64 lambda2 (sin.f64 phi1)) (cos.f64 phi2)))
(*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 lambda2 (cos.f64 phi2)))
(*.f64 (sin.f64 lambda1) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (sin.f64 phi1))))
(*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 lambda1) (*.f64 (*.f64 lambda2 (sin.f64 phi1)) (cos.f64 phi2)))
(*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 lambda2 (cos.f64 phi2)))
(*.f64 (sin.f64 lambda1) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda2 (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (sin.f64 phi1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (*.f64 lambda1 (cos.f64 phi2))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 lambda1 (*.f64 lambda2 (sin.f64 phi1)))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 lambda1 (cos.f64 phi2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(+.f64 (*.f64 lambda2 (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (sin.f64 phi1))) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 2) (cos.f64 phi2))))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (*.f64 lambda1 (cos.f64 phi2))) (cos.f64 phi2))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)) -1/2)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (*.f64 lambda1 (cos.f64 phi2)))) (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 2) -1/2)))))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 lambda1) (*.f64 -1/2 (pow.f64 lambda1 2))))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1/6 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 2) (cos.f64 phi2)))) (+.f64 (*.f64 lambda2 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1))) -1/6)) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda2 (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (sin.f64 phi1))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)) -1/2)) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (*.f64 lambda1 (cos.f64 phi2))) (cos.f64 phi2))) (*.f64 lambda2 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 2) -1/2)))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (*.f64 lambda1 (cos.f64 phi2))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 3) lambda2))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 lambda1) (*.f64 -1/2 (pow.f64 lambda1 2)))))) (*.f64 lambda2 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))) 0)
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 0 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))) 0)
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))) 1)
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) 2))) 2)
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) 4))) 4)
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(/.f64 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) 4)))) 8)
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) 4)))) (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) 4))))) 16)
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))

localize65.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
2.8b
(sin.f64 (-.f64 lambda1 lambda2))
3.0b
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))
Compiler

Compiled 195 to 79 computations (59.5% saved)

series20.0ms (0%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
5.0ms
lambda2
@inf
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))
2.0ms
lambda2
@-inf
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))
2.0ms
phi1
@inf
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))
2.0ms
phi1
@0
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))
1.0ms
phi2
@inf
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))

rewrite75.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
1244×bool.json-1
1244×bool.json-2
1222×rational.json-1
1222×rational.json-2
1222×rational.json-4
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
029184
1297176
2790176
31790176
44056176
Stop Event
node limit
Counts
2 → 22
Calls
Call 1
Inputs
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))) (*.f64 2 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 4)) (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1)))))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1)))))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 4)) (*.f64 2 (*.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))))))) (#(struct:change #<rule egg-rr> (2) ((x or (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))))))))

simplify558.0ms (1%)

Algorithm
egg-herbie
Rules
2350×rational.json-simplify-2
1628×rational.json-simplify-35
894×rational.json-simplify-1
850×rational.json-simplify-42
756×rational.json-simplify-26
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
017012186
139712040
281011672
3177511332
4319511332
5388011332
6458111332
7581111332
8645411332
9712911332
Stop Event
node limit
Counts
118 → 131
Calls
Call 1
Inputs
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.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 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.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 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.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 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 2) (-.f64 (*.f64 1/4 (pow.f64 lambda1 2)) 1/2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 2) (-.f64 (*.f64 1/4 (pow.f64 lambda1 2)) 1/2)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 0)
(+.f64 0 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))
(-.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 0)
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 1)
(/.f64 (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))) (*.f64 2 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) 2)
(/.f64 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 4)) (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 4))) 16)
(+.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 0)
(+.f64 0 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))))
(-.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 0)
(*.f64 2 (/.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 2))
(*.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 1)
(*.f64 1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))))
(*.f64 (*.f64 2 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1)))))))) 1/2)
(*.f64 1/2 (*.f64 2 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1)))))))))
(*.f64 (/.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 2) 2)
(/.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 1)
(/.f64 (*.f64 2 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1)))))))) 2)
(/.f64 (*.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 4)) (*.f64 2 (*.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 4))) 16)
Outputs
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) phi1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (pow.f64 phi1 3)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))) (*.f64 -1/6 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (pow.f64 phi1 3) (cos.f64 phi2)))))
(*.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (pow.f64 phi1 5)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (pow.f64 phi1 3))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (pow.f64 phi1 3) (cos.f64 phi2)))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (pow.f64 phi1 5)) 1/120))))
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) -1/6)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))) (+.f64 (+.f64 (*.f64 1/120 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (pow.f64 phi1 5)))) (*.f64 -1/5040 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (pow.f64 phi1 7))))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (pow.f64 phi1 3))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (pow.f64 phi1 3) (cos.f64 phi2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (pow.f64 phi1 5)) 1/120)) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (pow.f64 phi1 7)) -1/5040)))))
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) 1/120)) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) -1/6)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (+.f64 phi1 (*.f64 -1/5040 (pow.f64 phi1 7))))))
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (+.f64 phi1 (*.f64 -1/5040 (pow.f64 phi1 7))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1))
(*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (pow.f64 phi2 2)))))
(*.f64 (sin.f64 phi1) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (pow.f64 phi2 2)))))
(*.f64 (sin.f64 phi1) (+.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (pow.f64 phi2 2)))))
(*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))))))
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (pow.f64 phi2 4)) 1/24)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (pow.f64 phi2 2))))))
(+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (pow.f64 phi2 4) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (pow.f64 phi2 2))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (pow.f64 phi2 2))) (+.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (pow.f64 phi2 4) 1/24)))))
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (+.f64 (sin.f64 phi1) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (+.f64 (sin.f64 phi1) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))))
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)) (+.f64 (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (pow.f64 phi2 4)) 1/24)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (pow.f64 phi2 6)) -1/720))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (pow.f64 phi2 2))))))
(+.f64 (*.f64 -1/720 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))) (+.f64 (*.f64 1/24 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (pow.f64 phi2 4) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (pow.f64 phi2 2)))))))
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)) -1/2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (pow.f64 phi2 6) -1/720)) (+.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (pow.f64 phi2 4) 1/24))))))
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 -1/720 (pow.f64 phi2 6))))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (pow.f64 phi2 2))))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (+.f64 (sin.f64 phi1) (*.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 lambda2 lambda1) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) (+.f64 1 (*.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) (*.f64 lambda2 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 2) (-.f64 (*.f64 1/4 (pow.f64 lambda1 2)) 1/2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 2) (-.f64 (*.f64 (pow.f64 lambda1 2) 1/4) 1/2))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 2) (-.f64 (*.f64 (pow.f64 lambda1 2) 1/4) 1/2))) (*.f64 (sin.f64 phi1) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (-.f64 (*.f64 (pow.f64 lambda1 2) 1/4) 1/2) (*.f64 (sin.f64 phi1) (pow.f64 lambda2 2))) (*.f64 (sin.f64 phi1) (+.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 lambda2 lambda1)))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 (pow.f64 lambda2 2) (-.f64 (*.f64 (pow.f64 lambda1 2) 1/4) 1/2)) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) (+.f64 1 (*.f64 lambda2 lambda1)))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 (pow.f64 lambda2 2) (-.f64 (*.f64 (pow.f64 lambda1 2) 1/4) 1/2)) (+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) (*.f64 lambda2 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 2) (-.f64 (*.f64 1/4 (pow.f64 lambda1 2)) 1/2)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) lambda1) (pow.f64 lambda2 3)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 2) (-.f64 (*.f64 (pow.f64 lambda1 2) 1/4) 1/2)))))))
(+.f64 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 2) (-.f64 (*.f64 (pow.f64 lambda1 2) 1/4) 1/2))) (*.f64 (sin.f64 phi1) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 phi1)) (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (pow.f64 lambda2 2) (-.f64 (*.f64 (pow.f64 lambda1 2) 1/4) 1/2))))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) (+.f64 1 (*.f64 (pow.f64 lambda2 2) (-.f64 (*.f64 (pow.f64 lambda1 2) 1/4) 1/2)))))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (sin.f64 phi1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)) -1/2))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (pow.f64 lambda1 2) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 2) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)) -1/2))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (pow.f64 lambda1 2) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 2) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))
(*.f64 (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)) -1/2))
(*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1))))
(*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (sin.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)) -1/2)))
(+.f64 (*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 lambda1 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 lambda1 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)) -1/2))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (pow.f64 lambda1 2) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 2) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)) -1/2))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (pow.f64 lambda1 2) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 2) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))
(*.f64 (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)) -1/2))
(*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1))))
(*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (sin.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)) -1/2)))
(+.f64 (*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 lambda1 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 lambda1 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)) -1/2))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (pow.f64 lambda1 2) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 2) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)) -1/2))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) (sin.f64 phi1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (pow.f64 lambda1 2) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 2) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (*.f64 lambda2 -1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (*.f64 lambda2 -1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (*.f64 lambda2 -1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (*.f64 lambda2 -1)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (sin.f64 phi1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 0)
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))
(+.f64 0 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))
(-.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 0)
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 1)
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))
(/.f64 (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))) (*.f64 2 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) 2)
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))
(/.f64 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 4) 4)
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))
(/.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 4)) 8)
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))
(/.f64 (+.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 4)) (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))) 4))) 16)
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))
(+.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 0)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(+.f64 0 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(-.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 0)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(*.f64 2 (/.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(*.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 1)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(*.f64 1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(*.f64 (*.f64 2 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1)))))))) 1/2)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(*.f64 1/2 (*.f64 2 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1)))))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(*.f64 (/.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 2) 2)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(/.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 1)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(/.f64 (*.f64 2 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1)))))))) 2)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(/.f64 (*.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 4) 4)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(/.f64 (*.f64 2 (*.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 4)) 8)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(/.f64 (+.f64 (*.f64 2 (*.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 4)) (*.f64 2 (*.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) 1))))))) 4))) 16)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2)))))))))

eval540.0ms (1%)

Compiler

Compiled 41947 to 12835 computations (69.4% saved)

prune417.0ms (0.7%)

Pruning

40 alts after pruning (40 fresh and 0 done)

PrunedKeptTotal
New1083381121
Fresh18220
Picked101
Done404
Total1106401146
Error
10.0b
Counts
1146 → 40
Alt Table
Click to see full alt table
StatusErrorProgram
37.2b
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
27.7b
(atan2.f64 (*.f64 (+.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 lambda1 2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
34.1b
(atan2.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) -1)) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 2))) (*.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)))))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
42.9b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
31.8b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
28.5b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
33.8b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
32.4b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
29.3b
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
31.7b
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
22.4b
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
29.2b
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
34.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
27.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
35.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
31.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (*.f64 lambda1 (cos.f64 phi2))) (cos.f64 phi2)))))
21.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
26.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
21.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
32.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
37.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
27.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
28.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
24.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
25.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
32.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
32.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
37.3b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
32.9b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
37.7b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
36.8b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
49.9b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
40.7b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
38.9b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
48.5b
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
31.4b
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (pow.f64 lambda1 2) (*.f64 (sin.f64 lambda2) 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
47.6b
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
37.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
34.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
43.4b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Compiler

Compiled 2422 to 1582 computations (34.7% saved)

localize28.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
0.3b
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
2.7b
(cos.f64 (-.f64 lambda1 lambda2))
2.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 80 to 16 computations (80% saved)

series5.0ms (0%)

Counts
2 → 44
Calls

21 calls:

TimeVariablePointExpression
1.0ms
lambda1
@inf
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
1.0ms
lambda2
@inf
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
0.0ms
lambda1
@0
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
0.0ms
lambda2
@0
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
0.0ms
phi2
@inf
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))

rewrite76.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
1492×bool.json-1
1492×bool.json-2
1458×rational.json-1
1458×rational.json-2
1458×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01562
115262
242662
395662
4210162
5495962
Stop Event
node limit
Counts
2 → 33
Calls
Call 1
Inputs
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4))) (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4)) (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x or (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))))

simplify216.0ms (0.4%)

Algorithm
egg-herbie
Rules
2046×rational.json-simplify-1
1660×rational.json-simplify-35
1112×rational.json-simplify-2
690×rational.json-simplify-26
658×rational.json-simplify-51
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01933803
14753647
29903477
321603395
441613385
548233285
659993285
768203285
872713285
977003285
Stop Event
node limit
Counts
77 → 161
Calls
Call 1
Inputs
(*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 lambda1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 7))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(sin.f64 phi2)
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5))))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 -1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 0)
(+.f64 0 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 0)
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 1)
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 2)) 2)
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4)) 4)
(/.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4))) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4))) (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4)))) 16)
(+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(+.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 0)
(+.f64 0 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(+.f64 -1 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
(+.f64 (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))
(+.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1)
(*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 1)
(*.f64 1 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(*.f64 -1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(*.f64 2 (/.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -2))
(*.f64 (*.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -2) 1/2)
(*.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -1)
(*.f64 4 (/.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4))
(*.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4) 1/4)
(*.f64 1/2 (*.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -2))
(*.f64 (/.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -2) 2)
(/.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 1)
(/.f64 (*.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -2) 2)
(/.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -1)
(/.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4)) 8)
(/.f64 (*.f64 2 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -2)
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4)) (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4))) 16)
(/.f64 (/.f64 (*.f64 2 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1) 2)
(neg.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
Outputs
(*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (neg.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 (neg.f64 lambda2))))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) lambda1) (*.f64 (sin.f64 lambda2) 1)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 2) -1/2)))))
(*.f64 (sin.f64 phi1) (+.f64 (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 (neg.f64 lambda2))))) (+.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (*.f64 1/6 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 3) (sin.f64 (neg.f64 lambda2)))))))
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3)) 1/6))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 2) -1/2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 3) 1/6)) (*.f64 (sin.f64 phi1) (neg.f64 lambda1)))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (*.f64 -1 lambda1))))
(*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (*.f64 -1 lambda1))))
(*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (*.f64 -1 lambda1))))
(*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (*.f64 -1 lambda1))))
(*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(*.f64 (sin.f64 phi1) (cos.f64 lambda1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2)))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) -1/2))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))))) (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2)))) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)) -1/6))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))))) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda2 2))))) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)
(*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 7))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi1 7) -1/5040))))
(+.f64 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/5040 (pow.f64 phi1 7))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3))))))
(sin.f64 phi2)
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2))
(+.f64 (sin.f64 phi2) (*.f64 -1 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(+.f64 (*.f64 -1 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 phi2) (*.f64 -1/2 (*.f64 (sin.f64 phi2) (pow.f64 phi1 2)))))
(+.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi2) (pow.f64 phi1 2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(+.f64 (sin.f64 phi2) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1)) (*.f64 (pow.f64 phi1 2) (*.f64 -1/2 (sin.f64 phi2)))))
(+.f64 (sin.f64 phi2) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1)) (*.f64 -1/2 (*.f64 (sin.f64 phi2) (pow.f64 phi1 2)))))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(+.f64 (+.f64 (*.f64 -1 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 phi2) (*.f64 -1/2 (*.f64 (sin.f64 phi2) (pow.f64 phi1 2))))) (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))))
(+.f64 (+.f64 (sin.f64 phi2) (*.f64 -1/2 (*.f64 (sin.f64 phi2) (pow.f64 phi1 2)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1)) (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)))))
(+.f64 (+.f64 (sin.f64 phi2) (*.f64 (pow.f64 phi1 2) (*.f64 -1/2 (sin.f64 phi2)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (neg.f64 phi1) (*.f64 1/6 (pow.f64 phi1 3)))))
(+.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi2) (pow.f64 phi1 2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (neg.f64 phi1) (*.f64 1/6 (pow.f64 phi1 3))))))
(*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))
(+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(+.f64 (*.f64 phi2 (cos.f64 phi1)) (+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)))))
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)))))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) phi2)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5))))))
(+.f64 (*.f64 phi2 (cos.f64 phi1)) (+.f64 (+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5)))) (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)))))
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 1/120 (pow.f64 phi2 5)))) (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)))))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) (+.f64 phi2 (*.f64 1/120 (pow.f64 phi2 5))))))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 1/120 (pow.f64 phi2 5)) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3))))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 (neg.f64 lambda2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(+.f64 (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 (neg.f64 lambda2)))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) 1/2))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) 1/2))))
(+.f64 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (pow.f64 lambda1 2) (*.f64 (cos.f64 lambda2) 1/2)) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 2) 1/2)) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) (cos.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 2) 1/2)) (-.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 -1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(+.f64 (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) 1/2)) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 3) (sin.f64 (neg.f64 lambda2)))) -1/6))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (-.f64 (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)) 1/2)) (*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 (sin.f64 phi1) lambda1) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)) -1/6)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (pow.f64 lambda1 2) (*.f64 (cos.f64 lambda2) 1/2)) (*.f64 -1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 lambda1 3))))) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 lambda2)))))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (+.f64 lambda1 (*.f64 (pow.f64 lambda1 3) -1/6)))) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 2) 1/2)) (cos.f64 lambda2)))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (*.f64 -1 lambda1)))))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (*.f64 -1 lambda1)))))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (*.f64 -1 lambda1)))))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (*.f64 -1 lambda1)))))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 lambda2 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) -1)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(+.f64 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 lambda2 (neg.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (neg.f64 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 lambda2 (sin.f64 lambda1)))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (+.f64 (*.f64 lambda2 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) -1)) (*.f64 (pow.f64 lambda2 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) 1/2))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (-.f64 (+.f64 (*.f64 lambda2 (neg.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2)) 1/2))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda2 2)) 1/2)) (*.f64 (sin.f64 phi1) (-.f64 (neg.f64 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))))
(+.f64 (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (sin.f64 (neg.f64 phi1)))) (+.f64 (*.f64 (sin.f64 phi1) (-.f64 (*.f64 1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))) (cos.f64 lambda1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (+.f64 (*.f64 1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))) (neg.f64 (*.f64 lambda2 (sin.f64 lambda1)))) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))) (-.f64 (neg.f64 (cos.f64 lambda1)) (*.f64 lambda2 (sin.f64 lambda1))))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (+.f64 (*.f64 lambda2 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) -1)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)))) (*.f64 (pow.f64 lambda2 2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) 1/2)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(+.f64 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (+.f64 (*.f64 lambda2 (neg.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2)) 1/2)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)) 1/6)))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)))) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda2 2)) 1/2)) (*.f64 (sin.f64 phi1) (-.f64 (neg.f64 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1))))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))) (cos.f64 lambda1)))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 1/2 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2))) (cos.f64 lambda1)))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 (neg.f64 lambda2) lambda1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 (neg.f64 lambda2) lambda1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 (neg.f64 lambda2) lambda1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 (neg.f64 lambda2) lambda1))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 0)
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 0 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 0)
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 1)
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 2)) 2)
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4)) 4)
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4))) 8)
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4))) (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 4)))) 16)
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(+.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 0)
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(+.f64 0 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(+.f64 -1 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(+.f64 (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(+.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1)
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 1)
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 1 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 -1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 2 (/.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -2))
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (*.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -2) 1/2)
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -1)
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 4 (/.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4))
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4) 1/4)
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 1/2 (*.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -2))
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 (/.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -2) 2)
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(/.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 1)
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(/.f64 (*.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -2) 2)
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(/.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -1)
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(/.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4) 4)
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4)) 8)
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(/.f64 (*.f64 2 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -2)
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4)) (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 4))) 16)
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(/.f64 (/.f64 (*.f64 2 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1) 2)
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(neg.f64 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))

localize25.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
0.3b
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
2.7b
(cos.f64 (-.f64 lambda1 lambda2))
2.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 73 to 14 computations (80.8% saved)

series5.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
lambda1
@inf
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
0.0ms
lambda1
@-inf
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
0.0ms
lambda2
@-inf
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
0.0ms
lambda2
@inf
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
0.0ms
lambda1
@0
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))

rewrite70.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
1298×bool.json-1
1298×bool.json-2
1264×rational.json-1
1264×rational.json-2
1264×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01331
113431
239031
387231
4187831
5439831
Stop Event
node limit
Counts
1 → 10
Calls
Call 1
Inputs
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) 4)))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) 4))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))

simplify142.0ms (0.3%)

Algorithm
egg-herbie
Rules
1824×rational.json-simplify-35
1310×rational.json-simplify-2
1226×rational.json-simplify-48
992×rational.json-simplify-53
814×rational.json-simplify-41
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01462784
13922644
28252504
316502376
431092376
552382376
662402376
778642376
Stop Event
node limit
Counts
58 → 91
Calls
Call 1
Inputs
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 0)
(+.f64 0 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 0)
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1)
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 2))) 2)
(/.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) 4)) 4)
(/.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) 4))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) 4)))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) 4)))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) 4))))) 32)
Outputs
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)) -1/2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (*.f64 (sin.f64 phi1) -1/2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 -1/2 (pow.f64 phi2 2)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)) -1/2)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)) 1/24)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (pow.f64 phi2 2) (*.f64 (sin.f64 phi1) -1/2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) 1/24)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (+.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (*.f64 (sin.f64 phi1) -1/2))) (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 phi2 4)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 -1/2 (pow.f64 phi2 2))) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 phi2 4))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)) -1/2)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)) 1/24)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)) -1/720)))))
(+.f64 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) -1/720)) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) 1/24)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (*.f64 (sin.f64 phi1) -1/2)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 -1/720 (pow.f64 phi2 6))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (*.f64 (sin.f64 phi1) -1/2))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 -1/2 (pow.f64 phi2 2))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 -1/720 (pow.f64 phi2 6)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) -1/6)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) -1/6))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) 1/120)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) -1/6))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) -1/6)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 phi1 5) 1/120)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) -1/6)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 1/120 (pow.f64 phi1 5))) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) -1/6)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) 1/120)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)) -1/5040)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))) (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) -1/6))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) -1/5040)) (+.f64 (*.f64 phi1 (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 phi1 5) 1/120))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) -1/6)) (+.f64 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) -1/5040)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 phi2) (pow.f64 phi1 7))) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (*.f64 -1 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 phi1)) (neg.f64 (sin.f64 lambda2))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (neg.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (sin.f64 (neg.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (neg.f64 (*.f64 lambda1 (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2)))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 phi1)) (neg.f64 (sin.f64 lambda2))))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) -1/2))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (sin.f64 (neg.f64 lambda2))))) (*.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2))) (*.f64 (sin.f64 lambda2) 1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda1 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2))) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (sin.f64 phi1)) (neg.f64 (sin.f64 lambda2))))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) -1/2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 3) (cos.f64 phi2))) 1/6)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (sin.f64 (neg.f64 lambda2))))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))) 1/6)))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda1 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (neg.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2)))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)) 1/6)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)))) (*.f64 (*.f64 lambda1 (sin.f64 phi1)) (neg.f64 (cos.f64 phi2))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)) (*.f64 (cos.f64 phi2) 1/6)) (*.f64 (*.f64 lambda1 (sin.f64 phi1)) (neg.f64 (cos.f64 phi2))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))))
(+.f64 (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1)))) (*.f64 -1/2 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (pow.f64 lambda2 2))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))) (*.f64 -1/2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (cos.f64 phi2)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) -1/2)))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (pow.f64 lambda2 2))) (+.f64 (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (pow.f64 lambda2 3))))))
(+.f64 (+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))) (*.f64 -1/2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (cos.f64 phi2))))) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) -1/2)) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (pow.f64 lambda2 3))) (*.f64 (cos.f64 phi2) -1/6))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (+.f64 (cos.f64 phi2) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 2))))) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (+.f64 (*.f64 -1/6 (pow.f64 lambda2 3)) lambda2)))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (+.f64 (cos.f64 phi2) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 2))))) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 0)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(+.f64 0 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 0)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) 2))) 2)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(/.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) 4)) 4)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(/.f64 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) 4))) 8)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) 4)))) 16)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) 4)))) (*.f64 2 (*.f64 2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi2) 4))))) 32)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))

localize26.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
0.2b
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
0.2b
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
2.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 81 to 16 computations (80.2% saved)

series6.0ms (0%)

Counts
1 → 20
Calls

9 calls:

TimeVariablePointExpression
3.0ms
lambda2
@-inf
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
0.0ms
phi2
@inf
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
0.0ms
phi2
@-inf
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
0.0ms
phi2
@0
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
0.0ms
phi1
@0
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))

rewrite96.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1970×bool.json-1
1136×bool.json-2
1102×rational.json-1
1102×rational.json-2
1102×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01125
111625
235025
378525
4170725
5393825
6776525
Stop Event
node limit
Counts
1 → 10
Calls
Call 1
Inputs
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 1/2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4))))) (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4)))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))))

simplify180.0ms (0.3%)

Algorithm
egg-herbie
Rules
2678×rational.json-simplify-2
1912×rational.json-simplify-35
1080×rational.json-simplify-43
1074×rational.json-simplify-48
1042×rational.json-simplify-1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01011338
12581308
25401198
310611118
427371118
540941118
646141118
749221118
855381118
965461118
1079581118
Stop Event
node limit
Counts
30 → 68
Calls
Call 1
Inputs
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 6)))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 -1/720 (*.f64 (pow.f64 lambda2 6) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) 0)
(+.f64 0 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 1/2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 1/2))))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) 0)
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) 1)
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) 2))) 2)
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4))) 4)
(/.f64 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4)))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4))))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4))))) (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4)))))) 32)
Outputs
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)) -1/2)))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 phi2 2) -1/2))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 phi2 2)))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)) -1/2)) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4)) 1/24))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2))))) (*.f64 (sin.f64 phi1) (*.f64 1/24 (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 phi2 4) 1/24)) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 phi2 2) -1/2)))))
(*.f64 (cos.f64 lambda2) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 -1/2 (pow.f64 phi2 2))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 phi2 2))))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 6)))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(+.f64 (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2)) -1/2)) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4)) 1/24)))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 phi2 6)) -1/720)))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 phi2 2))))) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)) -1/720)) (*.f64 (sin.f64 phi1) (*.f64 1/24 (*.f64 (cos.f64 lambda2) (pow.f64 phi2 4))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 phi2 4) 1/24))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 phi2 6) -1/720)) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 phi2 2) -1/2))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/720 (pow.f64 phi2 6))) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (cos.f64 lambda2) (*.f64 1/24 (pow.f64 phi2 4)))))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 lambda2) (pow.f64 phi2 6))) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (cos.f64 lambda2) (*.f64 1/24 (pow.f64 phi2 4)))))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))
(*.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 phi1 3)))))
(+.f64 (*.f64 (cos.f64 lambda2) (*.f64 phi1 (cos.f64 phi2))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))
(*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 phi1 3)))) (+.f64 (*.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (*.f64 1/120 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (pow.f64 phi1 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 phi1 (cos.f64 phi2))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 1/120 (pow.f64 phi1 5)))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 1/120 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (pow.f64 phi1 5))))
(*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2))) (+.f64 (+.f64 (*.f64 1/120 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (pow.f64 phi1 5))) (*.f64 -1/5040 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (pow.f64 phi1 7)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 phi1 3))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))) (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 phi1 (cos.f64 phi2))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 1/120 (pow.f64 phi1 5))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 (pow.f64 phi1 7) -1/5040)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))) (+.f64 (*.f64 1/120 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (pow.f64 phi1 5))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (+.f64 phi1 (*.f64 -1/5040 (pow.f64 phi1 7))))))
(+.f64 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 (cos.f64 phi2) 1/120) (pow.f64 phi1 5))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/5040 (pow.f64 phi1 7))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda2 2)))))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda2 2)))))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda2 2)))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 phi2) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 2)))))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 -1/2 (pow.f64 lambda2 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda2 4)))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda2 2))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda2 2)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 4) (cos.f64 phi2))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda2 2))))) (*.f64 1/24 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (pow.f64 lambda2 4))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 lambda2 4))) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 -1/2 (pow.f64 lambda2 2))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 -1/720 (*.f64 (pow.f64 lambda2 6) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (+.f64 (*.f64 1/24 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda2 4)))) (*.f64 -1/720 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda2 6))))) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda2 2))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda2 2)))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 4) (cos.f64 phi2)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 -1/720 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (pow.f64 lambda2 6))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda2 2))))) (+.f64 (*.f64 1/24 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (pow.f64 lambda2 4))) (*.f64 -1/720 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (pow.f64 lambda2 6)))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 phi2) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 2))))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 -1/720 (pow.f64 lambda2 6)) (*.f64 1/24 (pow.f64 lambda2 4)))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 -1/2 (pow.f64 lambda2 2))))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 -1/720 (pow.f64 lambda2 6)) (*.f64 1/24 (pow.f64 lambda2 4)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) 0)
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(+.f64 0 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 1/2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 1/2))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(-.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) 0)
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) 1)
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) 2))) 2)
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(/.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4))) 4)
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(/.f64 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4)))) 8)
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4))))) 16)
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4))))) (*.f64 2 (*.f64 2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) 4)))))) 32)
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))

localize31.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.2b
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))
2.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 100 to 19 computations (81% saved)

series2.0ms (0%)

Counts
1 → 20
Calls

9 calls:

TimeVariablePointExpression
0.0ms
phi1
@0
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))
0.0ms
phi1
@-inf
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))
0.0ms
phi1
@inf
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))
0.0ms
lambda2
@0
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))
0.0ms
lambda2
@inf
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))

rewrite65.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
1188×bool.json-1
1188×bool.json-2
1154×rational.json-1
1154×rational.json-2
1154×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01231
112431
235131
377631
4170731
5396531
Stop Event
node limit
Counts
1 → 10
Calls
Call 1
Inputs
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 1/2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 4)))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 4))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))))))

simplify1.0s (1.8%)

Algorithm
egg-herbie
Rules
2332×rational.json-simplify-2
1724×rational.json-simplify-35
1224×rational.json-simplify-1
908×rational.json-simplify-26
894×rational.json-simplify-53
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0781384
11881116
23591044
37101008
417611008
530261008
641701008
745601008
855611008
961081008
1065201008
1168481008
1277671008
Stop Event
node limit
Counts
30 → 47
Calls
Call 1
Inputs
(*.f64 (sin.f64 phi1) (cos.f64 lambda1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2))) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2))) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/6 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1) (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (pow.f64 phi1 3))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (pow.f64 phi1 5))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1) (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (pow.f64 phi1 3)))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (pow.f64 phi1 5))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (pow.f64 phi1 3))) (*.f64 -1/5040 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (pow.f64 phi1 7))))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) 0)
(+.f64 0 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 1/2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 1/2)))
(-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) 0)
(/.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) 1)
(/.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 2)) 2)
(/.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 4)) 4)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 4))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 4)))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 4)))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 4))))) 32)
Outputs
(*.f64 (sin.f64 phi1) (cos.f64 lambda1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))
(*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))
(*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda1 lambda2)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2))) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 lambda2)) (+.f64 (*.f64 (pow.f64 lambda1 2) (*.f64 -1/2 (sin.f64 phi1))) (sin.f64 phi1)))
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) (*.f64 lambda1 lambda2))))
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2))) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/6 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))))
(+.f64 (sin.f64 phi1) (+.f64 (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 lambda2)) (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 3) lambda2)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)) (*.f64 lambda2 -1/6)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 lambda2)) (+.f64 (*.f64 (pow.f64 lambda1 2) (*.f64 -1/2 (sin.f64 phi1))) (sin.f64 phi1))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 lambda2) (*.f64 -1/6 (*.f64 lambda2 (pow.f64 lambda1 3)))))))
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (pow.f64 lambda1 3) (*.f64 lambda2 -1/6)) (+.f64 (*.f64 lambda1 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2))))))
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) (*.f64 (pow.f64 lambda1 3) (*.f64 lambda2 -1/6))))))
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (pow.f64 lambda1 2)) (+.f64 (*.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda1 3)))))))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)
(*.f64 phi1 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1) (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (pow.f64 phi1 3))))
(+.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 -1/6 (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (pow.f64 phi1 3))))
(*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (pow.f64 phi1 5))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1) (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (pow.f64 phi1 3)))))
(+.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (pow.f64 phi1 3))) (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (pow.f64 phi1 5) 1/120))))
(+.f64 (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 1/120 (pow.f64 phi1 5))))
(*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (pow.f64 phi1 5))) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (pow.f64 phi1 3))) (*.f64 -1/5040 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (pow.f64 phi1 7))))))
(+.f64 (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (pow.f64 phi1 5) 1/120)) (+.f64 (*.f64 phi1 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (pow.f64 phi1 3))) (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (pow.f64 phi1 7) -1/5040)))))
(+.f64 (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 phi1 (*.f64 -1/5040 (pow.f64 phi1 7)))) (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 1/120 (pow.f64 phi1 5)))))
(+.f64 (*.f64 1/120 (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (pow.f64 phi1 5))) (*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (+.f64 phi1 (*.f64 -1/5040 (pow.f64 phi1 7))))))
(*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(*.f64 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 -1/6 (pow.f64 phi1 3))))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) 0)
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(+.f64 0 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 1/2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 1/2)))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) 0)
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(/.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) 1)
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(/.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 2)) 2)
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(/.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 4)) 4)
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 4))) 8)
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 4)))) 16)
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 4)))) (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) 4))))) 32)
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))

localize88.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
2.7b
(cos.f64 (-.f64 lambda1 lambda2))
2.8b
(sin.f64 (-.f64 lambda1 lambda2))
12.4b
(+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))
Compiler

Compiled 158 to 71 computations (55.1% saved)

series5.0ms (0%)

Counts
2 → 35
Calls

12 calls:

TimeVariablePointExpression
1.0ms
lambda1
@inf
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
1.0ms
lambda2
@inf
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
1.0ms
lambda1
@0
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
0.0ms
phi2
@inf
(+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))
0.0ms
phi2
@0
(+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))

rewrite74.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
1388×bool.json-1
1388×bool.json-2
1344×rational.json-1
1344×rational.json-2
1344×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01878
117578
242578
385178
4185878
5444778
Stop Event
node limit
Counts
2 → 25
Calls
Call 1
Inputs
(+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))))) (#(struct:change #<rule egg-rr> (2) ((x or (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1/2)) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 4 (sin.f64 (-.f64 lambda1 lambda2)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 4 (sin.f64 (-.f64 lambda1 lambda2))))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 4 (sin.f64 (-.f64 lambda1 lambda2)))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))))))))

simplify187.0ms (0.3%)

Algorithm
egg-herbie
Rules
2572×rational.json-simplify-51
1782×rational.json-simplify-2
1706×rational.json-simplify-35
1140×rational.json-simplify-41
624×rational.json-simplify-26
Iterations

Useful iterations: 9 (0.0ms)

IterNodesCost
01163178
12793048
27302896
313692778
425602778
539002778
646892778
752242778
856202778
960262746
Stop Event
node limit
Counts
60 → 80
Calls
Call 1
Inputs
(*.f64 -1/2 (pow.f64 phi2 2))
(*.f64 1/24 (pow.f64 phi2 4))
(*.f64 1/24 (pow.f64 phi2 4))
(*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (pow.f64 lambda1 2)))) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3)))) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))))
(*.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(*.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(*.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(*.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (cos.f64 lambda1)))) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (cos.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (cos.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))))))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 0)
(*.f64 4 (/.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 4))
(*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 1/2))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 1)
(*.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(*.f64 (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) 1/2)
(*.f64 (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) 1/4)
(*.f64 1/2 (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 1/2) 2)
(*.f64 1/4 (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (/.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 4) 4)
(/.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 1)
(/.f64 (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) 2)
(/.f64 (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) 4)
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))) 16)
(+.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))) 0)
(+.f64 0 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1/2)) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1/2)))
(-.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))) 0)
(/.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))) 1)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2)))) 2)
(/.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 4 (sin.f64 (-.f64 lambda1 lambda2)))) 4)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 4 (sin.f64 (-.f64 lambda1 lambda2))))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 4 (sin.f64 (-.f64 lambda1 lambda2)))))) 16)
Outputs
(*.f64 -1/2 (pow.f64 phi2 2))
(*.f64 1/24 (pow.f64 phi2 4))
(*.f64 1/24 (pow.f64 phi2 4))
(*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))))
(*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (pow.f64 lambda1 2)))) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (pow.f64 lambda1 2) (neg.f64 (sin.f64 lambda2)))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2)))) (*.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (pow.f64 lambda1 2)))))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 lambda1 2))))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (*.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 lambda1 2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1/6 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3)))) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (pow.f64 lambda1 2) (neg.f64 (sin.f64 lambda2))))) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) -1/6)))))
(+.f64 (*.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (pow.f64 lambda1 2)))) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 lambda1 2))))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (*.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 lambda1 2))) (+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)))))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))))
(*.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(*.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(*.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(*.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (cos.f64 lambda1)))) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 lambda1)) (*.f64 lambda2 (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (cos.f64 lambda1)) -1)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 lambda1)) (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (cos.f64 lambda1)) (neg.f64 lambda2)))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (+.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (cos.f64 lambda1)))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (cos.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (pow.f64 lambda2 2)))) (*.f64 lambda2 (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (cos.f64 lambda1)) -1))))
(+.f64 (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (cos.f64 lambda1)) (neg.f64 lambda2)) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 lambda1)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(+.f64 (*.f64 (neg.f64 lambda2) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (cos.f64 lambda1))) (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 lambda1)) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda2 2)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (cos.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))))))
(+.f64 (*.f64 lambda2 (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (cos.f64 lambda1)) -1)) (+.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (pow.f64 lambda2 2))))) (*.f64 1/6 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3))))))
(+.f64 (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (cos.f64 lambda1)) (neg.f64 lambda2)) (+.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 lambda1)) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) 1/6))))
(+.f64 (*.f64 (neg.f64 lambda2) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (cos.f64 lambda1))) (+.f64 (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 lambda1)) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda2 2)))) (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3))))))
(+.f64 (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 lambda1)) (+.f64 1 (*.f64 -1/2 (pow.f64 lambda2 2)))) (*.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (cos.f64 lambda1)) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (+.f64 (neg.f64 lambda2) lambda1)))
(*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (pow.f64 phi2 2)))
(*.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (pow.f64 phi2 2) (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 1/24 (pow.f64 phi2 4)))
(*.f64 1/24 (*.f64 (pow.f64 phi2 4) (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 1/24 (pow.f64 phi2 4)))
(*.f64 1/24 (*.f64 (pow.f64 phi2 4) (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(-.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 0)
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(*.f64 4 (/.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 4))
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 1/2))
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 1)
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(*.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(*.f64 (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) 1/2)
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(*.f64 (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) 1/4)
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(*.f64 1/2 (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(*.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 1/2) 2)
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(*.f64 1/4 (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(*.f64 (/.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 4) 4)
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(/.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) 1)
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(/.f64 (*.f64 2 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) 2)
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(/.f64 (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) 4)
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(/.f64 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) 8)
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 4 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))) 16)
(+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4)))
(+.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))) 0)
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 0 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1/2)) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1/2)))
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(-.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))) 0)
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2))) 1)
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 (-.f64 lambda1 lambda2)))) 2)
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 4 (sin.f64 (-.f64 lambda1 lambda2)))) 4)
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 4 (sin.f64 (-.f64 lambda1 lambda2))))) 8)
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))) (*.f64 4 (sin.f64 (-.f64 lambda1 lambda2)))))) 16)
(*.f64 (+.f64 (*.f64 -1/2 (pow.f64 phi2 2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))

eval671.0ms (1.2%)

Compiler

Compiled 41667 to 13568 computations (67.4% saved)

prune884.0ms (1.6%)

Pruning

64 alts after pruning (64 fresh and 0 done)

PrunedKeptTotal
New1163411204
Fresh122335
Picked101
Done404
Total1180641244
Error
9.9b
Counts
1244 → 64
Alt Table
Click to see full alt table
StatusErrorProgram
44.5b
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
35.8b
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 1/24 (pow.f64 phi2 4)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
39.4b
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
39.9b
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 lambda1 2) -1/2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
40.2b
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
27.7b
(atan2.f64 (*.f64 (+.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 lambda1 2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
33.5b
(atan2.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) -1)) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 2))) (*.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
42.9b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
31.2b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
28.5b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
31.7b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
29.3b
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
39.3b
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
31.7b
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
22.4b
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
28.7b
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
24.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
25.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
32.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))))
35.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)))
35.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
21.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
33.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
26.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
27.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1)))) (sin.f64 phi1))))
32.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
28.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
37.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
45.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
28.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
24.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
25.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
32.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
22.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1))
34.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
33.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
34.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
32.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
37.3b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
32.9b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
44.1b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
37.7b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
39.8b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
49.9b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
38.2b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
40.7b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
48.3b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
38.9b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
48.5b
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
47.6b
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
40.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
37.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
38.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
37.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
34.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
45.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
46.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
34.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
39.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
41.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
46.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
43.4b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
43.7b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
46.0b
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Compiler

Compiled 3496 to 2326 computations (33.5% saved)

localize28.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.2b
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
2.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 86 to 17 computations (80.2% saved)

series4.0ms (0%)

Counts
1 → 20
Calls

9 calls:

TimeVariablePointExpression
0.0ms
phi2
@-inf
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
0.0ms
phi1
@inf
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
0.0ms
phi1
@-inf
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
0.0ms
phi1
@0
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
0.0ms
phi2
@inf
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))

rewrite96.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1970×bool.json-1
1136×bool.json-2
1102×rational.json-1
1102×rational.json-2
1102×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01125
111625
235025
378525
4170725
5393825
6776425
Stop Event
node limit
Counts
1 → 10
Calls
Call 1
Inputs
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 1/2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 4)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 4))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 4))))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 4)))))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))))

simplify180.0ms (0.3%)

Algorithm
egg-herbie
Rules
2688×rational.json-simplify-2
1904×rational.json-simplify-35
1076×rational.json-simplify-48
1064×rational.json-simplify-43
1030×rational.json-simplify-1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01041338
12591278
25501178
310841118
427611118
541241118
646231118
749341118
855341118
965481118
1079581118
Stop Event
node limit
Counts
30 → 65
Calls
Call 1
Inputs
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda1))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda1))) (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(*.f64 (sin.f64 phi1) (cos.f64 lambda1))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (cos.f64 lambda1)))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (cos.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (cos.f64 lambda1))))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) (cos.f64 lambda1)))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (cos.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (cos.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 4)))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 4)))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 6)))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) 0)
(+.f64 0 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 1/2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 1/2))))
(-.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) 0)
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) 1)
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) 2))) 2)
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 4))) 4)
(/.f64 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 4)))) 8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 4))))) 16)
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 4))))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 4)))))) 32)
Outputs
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda1))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda1))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (pow.f64 phi1 3)))))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda1)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (pow.f64 phi1 3)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda1))) (*.f64 1/120 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 phi1 5)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda1))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (pow.f64 phi1 3)))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda1) (pow.f64 phi1 5)) 1/120))))
(+.f64 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) -1/6))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda1))) (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (pow.f64 phi1 3)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda1))) (+.f64 (*.f64 -1/5040 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 phi1 7))) (*.f64 1/120 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 phi1 5))))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (pow.f64 phi1 3)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda1) (pow.f64 phi1 5)) 1/120)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 (pow.f64 phi1 7) -1/5040)))))
(+.f64 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) -1/6))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 1/120 (*.f64 (cos.f64 lambda1) (pow.f64 phi1 5)))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 phi1 (*.f64 -1/5040 (pow.f64 phi1 7))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (*.f64 -1/5040 (pow.f64 phi1 7)))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) (*.f64 (cos.f64 lambda1) (*.f64 -1/5040 (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)))))
(*.f64 (sin.f64 phi1) (cos.f64 lambda1))
(*.f64 (cos.f64 lambda1) (sin.f64 phi1))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (cos.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda1) (pow.f64 phi2 2)) -1/2)))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 phi2 2)))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (*.f64 (pow.f64 phi2 2) -1/2))))
(*.f64 (cos.f64 lambda1) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (cos.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (cos.f64 lambda1))))))
(+.f64 (+.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda1) (pow.f64 phi2 2)) -1/2))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda1) (pow.f64 phi2 4)) 1/24)))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 phi2 2))))) (*.f64 (sin.f64 phi1) (*.f64 1/24 (*.f64 (cos.f64 lambda1) (pow.f64 phi2 4)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 (pow.f64 phi2 4) 1/24)) (+.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (*.f64 (pow.f64 phi2 2) -1/2)))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (cos.f64 lambda1) (*.f64 -1/2 (pow.f64 phi2 2))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 -1/2 (pow.f64 phi2 2))) (+.f64 (cos.f64 lambda1) (*.f64 1/24 (*.f64 (cos.f64 lambda1) (pow.f64 phi2 4))))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) (cos.f64 lambda1)))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (cos.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (cos.f64 lambda1)))))))
(+.f64 (+.f64 (+.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda1) (pow.f64 phi2 2)) -1/2))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda1) (pow.f64 phi2 4)) 1/24))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda1) (pow.f64 phi2 6)) -1/720)))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (pow.f64 phi2 2))))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 -1/720 (*.f64 (cos.f64 lambda1) (pow.f64 phi2 6)))) (*.f64 (sin.f64 phi1) (*.f64 1/24 (*.f64 (cos.f64 lambda1) (pow.f64 phi2 4))))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (*.f64 (pow.f64 phi2 2) -1/2)))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 (pow.f64 phi2 6) -1/720)) (*.f64 (cos.f64 lambda1) (*.f64 (pow.f64 phi2 4) 1/24)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 -1/720 (pow.f64 phi2 6))) (+.f64 (cos.f64 lambda1) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (cos.f64 lambda1) (*.f64 -1/2 (pow.f64 phi2 2)))))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 lambda1) (pow.f64 phi2 4))) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 -1/720 (pow.f64 phi2 6))) (*.f64 (cos.f64 lambda1) (*.f64 -1/2 (pow.f64 phi2 2)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)) -1/2)))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 2) -1/2))))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 2) (*.f64 (sin.f64 phi1) -1/2))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 4)))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)) -1/2)) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 4)) 1/24))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))) (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 4))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 2) -1/2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 4) 1/24)))))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 lambda1 4))) (*.f64 (pow.f64 lambda1 2) (*.f64 (sin.f64 phi1) -1/2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 4)))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 6)))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)) -1/2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 6)) -1/720)) (+.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 4)) 1/24)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))) (+.f64 (*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 4))))) (*.f64 (cos.f64 phi2) (*.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 6))))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2)))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 6) -1/720)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 4) 1/24))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (pow.f64 lambda1 2) (*.f64 (sin.f64 phi1) -1/2)) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 6))) (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 lambda1 4)))))))
(*.f64 (cos.f64 phi2) (+.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 -1/720 (pow.f64 lambda1 6))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 lambda1 4))) (*.f64 (pow.f64 lambda1 2) (*.f64 (sin.f64 phi1) -1/2))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) 0)
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(+.f64 0 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 1/2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 1/2))))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) 0)
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) 1)
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) 2))) 2)
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(/.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 4))) 4)
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(/.f64 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 4)))) 8)
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 4))))) 16)
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(/.f64 (+.f64 (*.f64 2 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 4))))) (*.f64 2 (*.f64 2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) 4)))))) 32)
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))

localize14.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
0.2b
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
2.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 35 to 10 computations (71.4% saved)

series1.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
0.0ms
lambda1
@0
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
0.0ms
lambda1
@-inf
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
0.0ms
lambda2
@-inf
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
0.0ms
phi2
@-inf
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
0.0ms
lambda1
@inf
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))

rewrite70.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
1372×bool.json-1
1372×bool.json-2
1338×rational.json-1
1338×rational.json-2
1338×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01231
112231
235331
380631
4181631
5442731
Stop Event
node limit
Counts
1 → 18
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4)) (*.f64 2 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x and (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)))))))

simplify185.0ms (0.3%)

Algorithm
egg-herbie
Rules
1696×rational.json-simplify-26
1640×rational.json-simplify-52
1410×rational.json-simplify-35
918×rational.json-simplify-2
802×rational.json-simplify-1
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0581738
11081722
22881722
35511722
411771722
522411722
630501722
742251722
849211722
957871722
1063671722
1171781722
Stop Event
node limit
Counts
54 → 27
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 0)
(+.f64 0 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)))
(-.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 0)
(*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 1)
(*.f64 1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)))
(*.f64 2 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 1/2))
(*.f64 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 2) 1/2)
(*.f64 4 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4))
(*.f64 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4) 1/4)
(*.f64 1/2 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 2))
(*.f64 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 1/2) 2)
(*.f64 1/4 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4))
(*.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4) 4)
(/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 1)
(/.f64 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 2) 2)
(/.f64 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4) 4)
(/.f64 (*.f64 2 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4)) (*.f64 2 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4))) 16)
Outputs
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (sin.f64 phi2))
(atan2.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (sin.f64 phi2))
(atan2.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (sin.f64 phi2))
(atan2.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (sin.f64 phi2))
(atan2.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda2 (neg.f64 lambda1))))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (*.f64 lambda2 -1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (*.f64 lambda2 -1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (*.f64 lambda2 -1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (*.f64 lambda2 -1)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 lambda1 (neg.f64 lambda2)))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(+.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 0)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(+.f64 0 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(-.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 0)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 1)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(*.f64 1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(*.f64 2 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 1/2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(*.f64 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 2) 1/2)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(*.f64 4 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(*.f64 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4) 1/4)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(*.f64 1/2 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 2))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(*.f64 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 1/2) 2)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(*.f64 1/4 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(*.f64 (/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4) 4)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(/.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 1)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(/.f64 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 2) 2)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(/.f64 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4) 4)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(/.f64 (*.f64 2 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4)) 8)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))
(/.f64 (+.f64 (*.f64 2 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4)) (*.f64 2 (*.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) 4))) 16)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi2))

localize38.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
0.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
2.7b
(cos.f64 (-.f64 lambda1 lambda2))
2.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 106 to 52 computations (50.9% saved)

series11.0ms (0%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
1.0ms
lambda2
@0
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
1.0ms
lambda1
@inf
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
1.0ms
lambda2
@inf
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
1.0ms
phi2
@inf
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
1.0ms
phi1
@inf
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))

rewrite104.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
1718×bool.json-1
1718×bool.json-2
1678×rational.json-1
1678×rational.json-2
1180×bool.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
021116
1210116
2555116
31229116
42731116
56015116
Stop Event
node limit
Counts
2 → 23
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (/.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (/.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 4)) (*.f64 2 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))))) (#(struct:change #<rule egg-rr> (2) ((x or (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) 2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) 4)))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) 4)))) (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) 4))))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))))

simplify328.0ms (0.6%)

Algorithm
egg-herbie
Rules
1810×rational.json-simplify-35
1206×rational.json-simplify-2
1034×rational.json-simplify-41
832×rational.json-simplify-26
676×rational.json-simplify-1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01708089
14207953
28627759
317507655
433227655
552867655
667397655
778037655
Stop Event
node limit
Counts
119 → 108
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) lambda1)))) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (sin.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (sin.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1)))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))))) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 2)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 4)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 4)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 0)
(+.f64 0 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))
(-.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 0)
(*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 1)
(*.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))
(*.f64 2 (/.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2))
(*.f64 2 (*.f64 (/.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2) 1))
(*.f64 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2) 1/2)
(*.f64 1/2 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2))
(*.f64 (/.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2) 2)
(/.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 1)
(/.f64 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2) 2)
(/.f64 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 4)) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 4)) (*.f64 2 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 4))) 16)
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) 0)
(+.f64 0 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) 0)
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) 1)
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) 2))) 2)
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) 4))) 4)
(/.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) 4)))) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) 4)))) (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) 4))))) 16)
Outputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))))
(atan2.f64 (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (cos.f64 phi2)))))
(atan2.f64 (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))))
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))))
(atan2.f64 (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (cos.f64 phi2)))))
(atan2.f64 (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))))
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))))
(atan2.f64 (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (cos.f64 phi2)))))
(atan2.f64 (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))))
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (neg.f64 (sin.f64 (+.f64 lambda2 (*.f64 lambda1 -1)))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))))
(atan2.f64 (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (cos.f64 phi2)))))
(atan2.f64 (neg.f64 (sin.f64 (+.f64 lambda2 (neg.f64 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (+.f64 lambda1 (neg.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2))))))
(atan2.f64 (sin.f64 (+.f64 lambda1 (neg.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2)))))))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (+.f64 lambda1 (neg.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2))))))
(atan2.f64 (sin.f64 (+.f64 lambda1 (neg.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2)))))))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (+.f64 lambda1 (neg.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2))))))
(atan2.f64 (sin.f64 (+.f64 lambda1 (neg.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2)))))))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (+.f64 lambda1 (neg.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2))))))
(atan2.f64 (sin.f64 (+.f64 lambda1 (neg.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 (pow.f64 phi1 3) 1/6))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 phi1 (*.f64 (pow.f64 phi1 3) 1/6)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 (pow.f64 phi1 3) 1/6))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 phi1 (*.f64 (pow.f64 phi1 3) 1/6)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 (pow.f64 phi1 3) 1/6))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 phi1 (*.f64 (pow.f64 phi1 3) 1/6)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 phi1 (*.f64 (pow.f64 phi1 3) 1/6))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (-.f64 phi1 (*.f64 (pow.f64 phi1 3) 1/6)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 phi1 -1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (neg.f64 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (neg.f64 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 phi1 -1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (neg.f64 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (neg.f64 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 phi1 -1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (neg.f64 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (neg.f64 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 phi1 -1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (neg.f64 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (neg.f64 phi1))))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) lambda1)))) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda2))) (*.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda2))) (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 (*.f64 lambda1 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda2)) (neg.f64 (*.f64 lambda1 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (neg.f64 (sin.f64 lambda2)))))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) -1/2))))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 (*.f64 lambda1 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda2)) (*.f64 -1/2 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))))
(+.f64 (*.f64 (*.f64 lambda1 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) (*.f64 (sin.f64 lambda2) 1)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (neg.f64 (*.f64 lambda1 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (neg.f64 (sin.f64 lambda2)))))))
(*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (*.f64 lambda1 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (neg.f64 (sin.f64 lambda2))))) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 (neg.f64 lambda2)))))))
(+.f64 (*.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) (+.f64 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) -1/2))) (*.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (pow.f64 lambda1 3) (cos.f64 phi2)))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda2)) (*.f64 -1/2 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 (*.f64 lambda1 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) (*.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)))))))
(+.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)) 1/6)) (neg.f64 (*.f64 lambda1 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))))
(+.f64 (*.f64 (*.f64 lambda1 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/6 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 lambda1 3)))) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda2 (*.f64 lambda1 -1))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (+.f64 lambda2 (neg.f64 lambda1))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda2 (neg.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda1)))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (sin.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda1))) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (sin.f64 lambda1))) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (sin.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1)))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda1))) (+.f64 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (sin.f64 lambda1)))) (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda1))) (pow.f64 lambda2 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (cos.f64 phi2)))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (sin.f64 lambda1))) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))) (*.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 -1/2 (pow.f64 lambda2 2))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2)))) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (cos.f64 lambda1))))) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda1))) (+.f64 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda1))) (pow.f64 lambda2 2))) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (sin.f64 lambda1))))))))
(+.f64 (+.f64 (*.f64 -1/2 (*.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (cos.f64 phi2)))) (*.f64 -1/6 (*.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (sin.f64 lambda1)) (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (sin.f64 lambda1))) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda1)))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (sin.f64 lambda1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 2)))))))
(+.f64 (*.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 lambda1)) (+.f64 (cos.f64 phi2) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 2))))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (sin.f64 lambda1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2)))))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2)))))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2)))))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (cos.f64 (+.f64 lambda1 (neg.f64 lambda2)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 2)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (pow.f64 phi2 2)) -1/2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 -1/2 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (pow.f64 phi2 2)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 4)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (pow.f64 phi2 2)) -1/2)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (pow.f64 phi2 4))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 -1/2 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (pow.f64 phi2 2))))) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) 1/24)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (pow.f64 phi2 2) -1/2)) (+.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (pow.f64 phi2 4) 1/24)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))))))
(+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1) (pow.f64 phi2 4)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (pow.f64 phi2 2)) -1/2)) (+.f64 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (pow.f64 phi2 4))))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (pow.f64 phi2 6)) -1/720))))
(+.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) 1/24)) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 -1/2 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (pow.f64 phi2 2))))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/720 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (pow.f64 phi2 6))))))
(+.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (pow.f64 phi2 6) -1/720)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (pow.f64 phi2 2) -1/2)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 1/24 (pow.f64 phi2 4)))) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))))
(+.f64 (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)))) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 0)
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(+.f64 0 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(-.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 0)
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 1)
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(*.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(*.f64 2 (/.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(*.f64 2 (*.f64 (/.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2) 1))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(*.f64 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2) 1/2)
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(*.f64 1/2 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(*.f64 (/.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2) 2)
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(/.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 1)
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(/.f64 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 2) 2)
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(/.f64 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 4) 4)
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(/.f64 (*.f64 2 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 4)) 8)
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(/.f64 (+.f64 (*.f64 2 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 4)) (*.f64 2 (*.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))) 4))) 16)
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) 0)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 0 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) 0)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))) 1)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) 2))) 2)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(/.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) 4))) 4)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(/.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) 4)))) 8)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) 4)))) (*.f64 2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) 4))))) 16)
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))

localize28.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.2b
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))
2.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 88 to 17 computations (80.7% saved)

series4.0ms (0%)

Counts
1 → 24
Calls

12 calls:

TimeVariablePointExpression
2.0ms
lambda2
@-inf
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
0.0ms
phi2
@inf
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
0.0ms
lambda1
@0
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
0.0ms
phi1
@0
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
0.0ms
lambda1
@inf
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))

rewrite77.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
1696×bool.json-1
1696×bool.json-2
1662×rational.json-1
1662×rational.json-2
1226×bool.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01751
117451
247851
3107151
4239551
5565251
Stop Event
node limit
Counts
1 → 25
Calls
Call 1
Inputs
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) -1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (/.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4)) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4)) (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 2 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x not (not (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x and (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x or (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))))))

simplify248.0ms (0.4%)

Algorithm
egg-herbie
Rules
2104×rational.json-simplify-2
1692×rational.json-simplify-35
906×rational.json-simplify-52
888×rational.json-simplify-48
866×rational.json-simplify-1
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01212847
12752803
25832647
310892637
424052529
536522529
647752529
753212529
857882529
962692529
1068982529
Stop Event
node limit
Counts
49 → 95
Calls
Call 1
Inputs
(sin.f64 phi2)
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)) (sin.f64 phi2))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)) (+.f64 (*.f64 1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5))))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) lambda1)))) (sin.f64 phi1))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) lambda1))))) (sin.f64 phi1))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 1/6 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) lambda1)))))) (sin.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(+.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 0)
(+.f64 0 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(+.f64 -1 (-.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) -1))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))
(+.f64 (-.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) -1) -1)
(*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 1)
(*.f64 1 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(*.f64 -1 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 1/2))
(*.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 2) 1/2)
(*.f64 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -1)
(*.f64 4 (/.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4))
(*.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4) 1/4)
(*.f64 1/2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 2))
(*.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 1/2) 2)
(/.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 1)
(/.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 2) 2)
(/.f64 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -1)
(/.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4) 4)
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4)) 8)
(/.f64 (*.f64 2 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -2)
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4)) (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4))) 16)
(/.f64 (/.f64 (*.f64 2 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1) 2)
(neg.f64 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
Outputs
(sin.f64 phi2)
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)) (sin.f64 phi2))
(+.f64 (sin.f64 phi2) (*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)))
(+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)) (+.f64 (sin.f64 phi2) (*.f64 (pow.f64 phi1 2) (*.f64 (sin.f64 phi2) -1/2))))
(+.f64 (sin.f64 phi2) (+.f64 (*.f64 (pow.f64 phi1 2) (*.f64 (sin.f64 phi2) -1/2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1)) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi2) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1)) (+.f64 (sin.f64 phi2) (*.f64 (pow.f64 phi1 2) (*.f64 (sin.f64 phi2) -1/2))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)) (+.f64 (*.f64 1/6 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 (pow.f64 phi1 3) 1/6)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)) (+.f64 (sin.f64 phi2) (*.f64 (pow.f64 phi1 2) (*.f64 (sin.f64 phi2) -1/2)))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1)) (+.f64 (sin.f64 phi2) (+.f64 (*.f64 (pow.f64 phi1 3) (*.f64 1/6 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))) (*.f64 (pow.f64 phi1 2) (*.f64 (sin.f64 phi2) -1/2)))))
(+.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi2) (*.f64 -1/2 (pow.f64 phi1 2)))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (neg.f64 phi1) (*.f64 1/6 (pow.f64 phi1 3)))))
(+.f64 (+.f64 (sin.f64 phi2) (*.f64 (pow.f64 phi1 2) (*.f64 (sin.f64 phi2) -1/2))) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (+.f64 (neg.f64 phi1) (*.f64 1/6 (pow.f64 phi1 3)))))
(*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 phi2 (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 phi2 (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 phi2 (cos.f64 phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))))
(+.f64 (*.f64 phi2 (cos.f64 phi1)) (+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (*.f64 (pow.f64 phi2 3) -1/6))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (+.f64 (*.f64 (pow.f64 phi2 3) (*.f64 -1/6 (cos.f64 phi1))) (*.f64 phi2 (cos.f64 phi1))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5))))))
(+.f64 (*.f64 phi2 (cos.f64 phi1)) (+.f64 (+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (*.f64 (pow.f64 phi2 5) 1/120))) (*.f64 (cos.f64 phi1) (*.f64 (pow.f64 phi2 3) -1/6))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (+.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 1/120 (pow.f64 phi2 5)))) (*.f64 (pow.f64 phi2 3) (*.f64 -1/6 (cos.f64 phi1)))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) (+.f64 phi2 (*.f64 1/120 (pow.f64 phi2 5))))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (cos.f64 phi1) (+.f64 phi2 (+.f64 (*.f64 1/120 (pow.f64 phi2 5)) (*.f64 -1/6 (pow.f64 phi2 3))))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (-.f64 (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (neg.f64 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (-.f64 (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (neg.f64 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (-.f64 (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (neg.f64 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1))))
(*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))
(*.f64 -1 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1)))
(*.f64 lambda2 (*.f64 (sin.f64 lambda1) (neg.f64 (sin.f64 phi1))))
(*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1))))
(*.f64 lambda2 (*.f64 (sin.f64 lambda1) (sin.f64 (neg.f64 phi1))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (-.f64 (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (neg.f64 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (-.f64 (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (neg.f64 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (-.f64 (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (neg.f64 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1))))
(*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))
(*.f64 -1 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1)))
(*.f64 lambda2 (*.f64 (sin.f64 lambda1) (neg.f64 (sin.f64 phi1))))
(*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1))))
(*.f64 lambda2 (*.f64 (sin.f64 lambda1) (sin.f64 (neg.f64 phi1))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (-.f64 (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (neg.f64 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (-.f64 (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (neg.f64 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (-.f64 (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (neg.f64 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) lambda1)))) (sin.f64 phi1))
(+.f64 (*.f64 lambda2 (*.f64 (*.f64 lambda1 (sin.f64 phi1)) -1)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (-.f64 (*.f64 lambda2 (neg.f64 (*.f64 lambda1 (sin.f64 phi1)))) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (-.f64 (*.f64 lambda2 (*.f64 lambda1 (neg.f64 (sin.f64 phi1)))) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (-.f64 (*.f64 lambda2 (*.f64 lambda1 (sin.f64 (neg.f64 phi1)))) (sin.f64 phi1)))
(+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) lambda1))))) (sin.f64 phi1))
(+.f64 (+.f64 (*.f64 lambda2 (*.f64 (*.f64 lambda1 (sin.f64 phi1)) -1)) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 2) 1/2))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(+.f64 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)) (+.f64 (*.f64 lambda2 (neg.f64 (*.f64 lambda1 (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (*.f64 1/2 (pow.f64 lambda1 2)))))
(+.f64 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (pow.f64 lambda1 2)) (neg.f64 (*.f64 lambda2 lambda1)))))
(+.f64 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (pow.f64 lambda1 2)) (*.f64 lambda1 (neg.f64 lambda2)))))
(+.f64 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (pow.f64 lambda1 2)) (*.f64 lambda2 (neg.f64 lambda1)))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 1/6 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) lambda1)))))) (sin.f64 phi1))
(+.f64 (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 2) 1/2)) (+.f64 (*.f64 lambda2 (*.f64 (*.f64 lambda1 (sin.f64 phi1)) -1)) (*.f64 lambda2 (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)) 1/6)))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(+.f64 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)) (+.f64 (*.f64 lambda2 (neg.f64 (*.f64 lambda1 (sin.f64 phi1)))) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)) (*.f64 1/6 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 1/2 (pow.f64 lambda1 2))))))
(+.f64 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (pow.f64 lambda1 2)) (neg.f64 (*.f64 lambda2 lambda1)))) (*.f64 lambda2 (*.f64 (pow.f64 lambda1 3) (*.f64 (sin.f64 phi1) 1/6)))))
(+.f64 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (*.f64 1/6 (pow.f64 lambda1 3))) (+.f64 (*.f64 1/2 (pow.f64 lambda1 2)) (*.f64 lambda1 (neg.f64 lambda2))))))
(+.f64 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (pow.f64 lambda1 2)) (+.f64 (*.f64 lambda1 (neg.f64 lambda2)) (*.f64 lambda2 (*.f64 1/6 (pow.f64 lambda1 3)))))))
(+.f64 (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (pow.f64 lambda1 3) (*.f64 lambda2 1/6)) (+.f64 (*.f64 1/2 (pow.f64 lambda1 2)) (*.f64 lambda2 (neg.f64 lambda1))))))
(+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(+.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 0)
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(+.f64 0 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(+.f64 -1 (-.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) -1))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(+.f64 (-.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) -1) -1)
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 1)
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(*.f64 1 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(*.f64 -1 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 1/2))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(*.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 2) 1/2)
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(*.f64 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -1)
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(*.f64 4 (/.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(*.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4) 1/4)
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(*.f64 1/2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 2))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(*.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 1/2) 2)
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(/.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 1)
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(/.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 2) 2)
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(/.f64 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))) -1)
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(/.f64 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4) 4)
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(/.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4)) 8)
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(/.f64 (*.f64 2 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -2)
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4)) (*.f64 2 (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) 4))) 16)
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(/.f64 (/.f64 (*.f64 2 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1) 2)
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))
(neg.f64 (-.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2))))
(+.f64 (neg.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))) (*.f64 (sin.f64 phi2) (cos.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1)))

localize29.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
0.1b
(*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2))
0.2b
(*.f64 (cos.f64 lambda2) lambda1)
0.2b
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
Compiler

Compiled 99 to 18 computations (81.8% saved)

series14.0ms (0%)

Counts
2 → 40
Calls

15 calls:

TimeVariablePointExpression
9.0ms
phi2
@-inf
(*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2))
1.0ms
lambda2
@0
(*.f64 (cos.f64 lambda2) lambda1)
1.0ms
lambda1
@0
(*.f64 (cos.f64 lambda2) lambda1)
0.0ms
phi2
@inf
(*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2))
0.0ms
lambda2
@-inf
(*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2))

rewrite75.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
1410×bool.json-1
1410×bool.json-2
1372×rational.json-1
1372×rational.json-2
1372×rational.json-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01346
113846
239646
388346
4201246
5475446
Stop Event
node limit
Counts
2 → 16
Calls
Call 1
Inputs
(*.f64 (cos.f64 lambda2) lambda1)
(*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda2) lambda1) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 lambda2) lambda1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda2) lambda1) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 lambda2) lambda1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 lambda2) (+.f64 lambda1 lambda1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 4))) (*.f64 2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (cos.f64 lambda2) lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (cos.f64 lambda2) lambda1))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (cos.f64 lambda2) lambda1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) 4)) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) 4))) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) 4))) (*.f64 2 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) 4)))) 16)))) (#(struct:change #<rule egg-rr> (2) ((x not (not (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x and (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x or (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)))))))

simplify221.0ms (0.4%)

Algorithm
egg-herbie
Rules
2076×rational.json-simplify-53
2026×rational.json-simplify-2
1628×rational.json-simplify-35
956×rational.json-simplify-1
656×rational.json-simplify-43
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01031874
12511868
25491786
311041728
426831728
539491728
644011728
751851728
856741728
960211728
1061311728
1179191728
Stop Event
node limit
Counts
56 → 78
Calls
Call 1
Inputs
lambda1
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) lambda1)) lambda1)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) lambda1)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) lambda1)) lambda1))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 lambda2 6) lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) lambda1)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) lambda1)) lambda1)))
(*.f64 (cos.f64 phi2) lambda1)
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2)))))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))))))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 2))) (*.f64 (cos.f64 lambda2) lambda1)) (sin.f64 lambda2))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/24 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 4))))) (sin.f64 lambda2))
(-.f64 (+.f64 (*.f64 -1/720 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 6))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/24 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 4)))))) (sin.f64 lambda2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) 0)
(+.f64 0 (*.f64 (cos.f64 lambda2) lambda1))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) 0)
(/.f64 (*.f64 (cos.f64 lambda2) lambda1) 1)
(/.f64 (*.f64 (cos.f64 lambda2) (+.f64 lambda1 lambda1)) 2)
(/.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 4)) 4)
(/.f64 (*.f64 2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 4))) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 4))) (*.f64 2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 4)))) 16)
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) 0)
(+.f64 0 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)))
(-.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) 0)
(/.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) 1)
(/.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) 2)) 2)
(/.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) 4)) 4)
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) 4))) 8)
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) 4))) (*.f64 2 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) 4)))) 16)
Outputs
lambda1
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) lambda1)) lambda1)
(+.f64 lambda1 (*.f64 (pow.f64 lambda2 2) (*.f64 lambda1 -1/2)))
(+.f64 lambda1 (*.f64 -1/2 (*.f64 lambda1 (pow.f64 lambda2 2))))
(+.f64 lambda1 (*.f64 lambda1 (*.f64 -1/2 (pow.f64 lambda2 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) lambda1)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) lambda1)) lambda1))
(+.f64 (*.f64 (pow.f64 lambda2 4) (*.f64 lambda1 1/24)) (+.f64 lambda1 (*.f64 (pow.f64 lambda2 2) (*.f64 lambda1 -1/2))))
(+.f64 lambda1 (+.f64 (*.f64 -1/2 (*.f64 lambda1 (pow.f64 lambda2 2))) (*.f64 lambda1 (*.f64 1/24 (pow.f64 lambda2 4)))))
(+.f64 (*.f64 -1/2 (*.f64 lambda1 (pow.f64 lambda2 2))) (+.f64 lambda1 (*.f64 1/24 (*.f64 lambda1 (pow.f64 lambda2 4)))))
(+.f64 lambda1 (*.f64 lambda1 (+.f64 (*.f64 1/24 (pow.f64 lambda2 4)) (*.f64 -1/2 (pow.f64 lambda2 2)))))
(+.f64 lambda1 (*.f64 lambda1 (+.f64 (*.f64 -1/2 (pow.f64 lambda2 2)) (*.f64 1/24 (pow.f64 lambda2 4)))))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 lambda2 6) lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) lambda1)) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) lambda1)) lambda1)))
(+.f64 (+.f64 (*.f64 (pow.f64 lambda2 4) (*.f64 lambda1 1/24)) (+.f64 lambda1 (*.f64 (pow.f64 lambda2 2) (*.f64 lambda1 -1/2)))) (*.f64 (pow.f64 lambda2 6) (*.f64 lambda1 -1/720)))
(+.f64 (+.f64 lambda1 (*.f64 lambda1 (*.f64 1/24 (pow.f64 lambda2 4)))) (+.f64 (*.f64 lambda1 (*.f64 -1/720 (pow.f64 lambda2 6))) (*.f64 -1/2 (*.f64 lambda1 (pow.f64 lambda2 2)))))
(+.f64 (+.f64 lambda1 (*.f64 -1/2 (*.f64 lambda1 (pow.f64 lambda2 2)))) (+.f64 (*.f64 -1/720 (*.f64 lambda1 (pow.f64 lambda2 6))) (*.f64 1/24 (*.f64 lambda1 (pow.f64 lambda2 4)))))
(+.f64 lambda1 (+.f64 (*.f64 (pow.f64 lambda2 6) (*.f64 lambda1 -1/720)) (*.f64 lambda1 (+.f64 (*.f64 1/24 (pow.f64 lambda2 4)) (*.f64 -1/2 (pow.f64 lambda2 2))))))
(+.f64 lambda1 (+.f64 (*.f64 (pow.f64 lambda2 6) (*.f64 lambda1 -1/720)) (*.f64 lambda1 (+.f64 (*.f64 -1/2 (pow.f64 lambda2 2)) (*.f64 1/24 (pow.f64 lambda2 4))))))
(+.f64 (+.f64 lambda1 (*.f64 -1/2 (*.f64 lambda1 (pow.f64 lambda2 2)))) (*.f64 lambda1 (+.f64 (*.f64 1/24 (pow.f64 lambda2 4)) (*.f64 -1/720 (pow.f64 lambda2 6)))))
(*.f64 (cos.f64 phi2) lambda1)
(*.f64 lambda1 (cos.f64 phi2))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))))
(+.f64 (*.f64 lambda1 (cos.f64 phi2)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) -1)))
(+.f64 (*.f64 lambda1 (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (neg.f64 lambda2)))
(*.f64 (cos.f64 phi2) (+.f64 lambda1 (neg.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2)))))
(+.f64 (*.f64 lambda1 (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (*.f64 (cos.f64 phi2) -1)) (*.f64 (pow.f64 lambda2 2) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) -1/2))))
(+.f64 (*.f64 lambda1 (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (*.f64 -1/2 (*.f64 lambda1 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 2))))))
(+.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 lambda1 (*.f64 -1/2 (*.f64 lambda1 (pow.f64 lambda2 2))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (*.f64 -1/2 (pow.f64 lambda2 2))) (+.f64 lambda1 (neg.f64 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 lambda1 (pow.f64 lambda2 2))) (+.f64 lambda1 (neg.f64 lambda2))))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 phi2))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2))))))
(+.f64 (*.f64 (pow.f64 lambda2 2) (*.f64 (*.f64 lambda1 (cos.f64 phi2)) -1/2)) (+.f64 (+.f64 (*.f64 lambda2 (*.f64 (cos.f64 phi2) -1)) (*.f64 1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 3)))) (*.f64 lambda1 (cos.f64 phi2))))
(+.f64 (*.f64 lambda1 (cos.f64 phi2)) (+.f64 (*.f64 -1/2 (*.f64 lambda1 (*.f64 (cos.f64 phi2) (pow.f64 lambda2 2)))) (+.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 3) 1/6)))))
(+.f64 (+.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 1/6 (pow.f64 lambda2 3)))) (*.f64 (cos.f64 phi2) (+.f64 lambda1 (*.f64 -1/2 (*.f64 lambda1 (pow.f64 lambda2 2))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 lambda1 (neg.f64 lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (*.f64 lambda1 (*.f64 -1/2 (pow.f64 lambda2 2))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 lambda1 (neg.f64 lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (*.f64 -1/2 (pow.f64 lambda2 2))) (*.f64 1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 lambda1 (neg.f64 lambda2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 lambda1 (pow.f64 lambda2 2))) (*.f64 1/6 (pow.f64 lambda2 3)))))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1))
(*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)))
(*.f64 lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 lambda1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1))
(*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)))
(*.f64 lambda1 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(*.f64 lambda1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (*.f64 lambda1 (cos.f64 phi2)) (cos.f64 lambda2))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))
(-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 2))) (*.f64 (cos.f64 lambda2) lambda1)) (sin.f64 lambda2))
(+.f64 (*.f64 lambda1 (cos.f64 lambda2)) (-.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (pow.f64 phi2 2))) (sin.f64 lambda2)))
(+.f64 (*.f64 lambda1 (cos.f64 lambda2)) (-.f64 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 phi2 2))) (sin.f64 lambda2)))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/24 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 4))))) (sin.f64 lambda2))
(+.f64 (+.f64 (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (*.f64 (pow.f64 phi2 4) 1/24))) (-.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (pow.f64 phi2 2))) (sin.f64 lambda2)))
(+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (pow.f64 phi2 2))) (-.f64 (+.f64 (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 1/24 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (pow.f64 phi2 4)))) (sin.f64 lambda2)))
(+.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))
(-.f64 (+.f64 (*.f64 -1/720 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 6))) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/24 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (pow.f64 phi2 4)))))) (sin.f64 lambda2))
(+.f64 (+.f64 (*.f64 lambda1 (cos.f64 lambda2)) (+.f64 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (*.f64 (pow.f64 phi2 4) 1/24)) (*.f64 -1/2 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (pow.f64 phi2 2))))) (-.f64 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (*.f64 (pow.f64 phi2 6) -1/720)) (sin.f64 lambda2)))
(+.f64 (+.f64 (*.f64 lambda1 (cos.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (pow.f64 phi2 4))))) (-.f64 (*.f64 -1/720 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (pow.f64 phi2 6))) (sin.f64 lambda2)))
(+.f64 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))) (+.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (*.f64 -1/720 (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (pow.f64 phi2 6)))))
(+.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (*.f64 (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) 0)
(*.f64 lambda1 (cos.f64 lambda2))
(+.f64 0 (*.f64 (cos.f64 lambda2) lambda1))
(*.f64 lambda1 (cos.f64 lambda2))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) 0)
(*.f64 lambda1 (cos.f64 lambda2))
(/.f64 (*.f64 (cos.f64 lambda2) lambda1) 1)
(*.f64 lambda1 (cos.f64 lambda2))
(/.f64 (*.f64 (cos.f64 lambda2) (+.f64 lambda1 lambda1)) 2)
(*.f64 lambda1 (cos.f64 lambda2))
(/.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 4)) 4)
(*.f64 lambda1 (cos.f64 lambda2))
(/.f64 (*.f64 2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 4))) 8)
(*.f64 lambda1 (cos.f64 lambda2))
(/.f64 (+.f64 (*.f64 2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 4))) (*.f64 2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 4)))) 16)
(*.f64 lambda1 (cos.f64 lambda2))
(+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) 0)
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(+.f64 0 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(-.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) 0)
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(/.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) 1)
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(/.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) 2)) 2)
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(/.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) 4)) 4)
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(/.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) 4))) 8)
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(/.f64 (+.f64 (*.f64 2 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) 4))) (*.f64 2 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) 4)))) 16)
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))

eval330.0ms (0.6%)

Compiler

Compiled 31499 to 10948 computations (65.2% saved)

prune334.0ms (0.6%)

Pruning

63 alts after pruning (62 fresh and 1 done)

PrunedKeptTotal
New975321007
Fresh293059
Picked101
Done314
Total1008631071
Error
9.9b
Counts
1071 → 63
Alt Table
Click to see full alt table
StatusErrorProgram
40.9b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
46.9b
(atan2.f64 (+.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 lambda1 2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
47.6b
(atan2.f64 (+.f64 (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
44.5b
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
47.4b
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
45.7b
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
45.0b
(atan2.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
39.3b
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
27.7b
(atan2.f64 (*.f64 (+.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 lambda1 2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
40.8b
(atan2.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) -1)) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 2))) (*.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)))))) (cos.f64 phi2)) (sin.f64 phi2))
42.9b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
38.4b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))
39.0b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
29.3b
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
34.0b
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
31.7b
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
39.4b
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
38.2b
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
29.8b
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
37.4b
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
24.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
25.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
33.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
26.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
27.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1)))) (sin.f64 phi1))))
32.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
28.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
37.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
28.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
25.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
24.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
32.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
22.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1))
33.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
34.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
32.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
37.3b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
32.9b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
43.8b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
49.9b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
35.3b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
40.7b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
43.2b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
47.6b
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
49.4b
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
38.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
41.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
46.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
37.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
40.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
37.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
34.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
46.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
34.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
41.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
44.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
47.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
42.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
49.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
45.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
49.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
50.5b
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
46.0b
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Compiler

Compiled 1609 to 1087 computations (32.4% saved)

regimes705.0ms (1.3%)

Counts
139 → 2
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1)))) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (*.f64 lambda1 (cos.f64 phi2))) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 1/24 (pow.f64 phi2 4)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 lambda1 2) -1/2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) -1)) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 2))) (*.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)))))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 lambda1 2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (pow.f64 lambda1 2) (*.f64 (sin.f64 lambda2) 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi2) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1)))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 lambda1 2) -1/2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(atan2.f64 (*.f64 (+.f64 (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) -1)) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 2))) (*.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)))))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) -1)) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 2))) (*.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(atan2.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) -1)) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 2))) (*.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(atan2.f64 (*.f64 (+.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 lambda1 2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

6 calls:

176.0ms
phi2
173.0ms
lambda2
120.0ms
lambda1
65.0ms
(-.f64 lambda1 lambda2)
63.0ms
phi1
Results
ErrorSegmentsBranch
12.6b2lambda1
13.0b3lambda2
14.1b1phi1
13.0b3phi2
14.1b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
14.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 3408 to 766 computations (77.5% saved)

bsearch138.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
137.0ms
3.105760711962671e+104
5.540199093905486e+111
Results
98.0ms86×body1024valid
35.0ms58×body512valid
Compiler

Compiled 674 to 437 computations (35.2% saved)

regimes484.0ms (0.9%)

Counts
129 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1)))) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (*.f64 lambda1 (cos.f64 phi2))) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 1/24 (pow.f64 phi2 4)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 lambda1 2) -1/2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) -1)) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 2))) (*.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)))))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 lambda1 2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (pow.f64 lambda1 2) (*.f64 (sin.f64 lambda2) 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi2) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (pow.f64 lambda1 2)))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1)))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

6 calls:

151.0ms
phi2
62.0ms
(-.f64 lambda1 lambda2)
59.0ms
lambda2
58.0ms
lambda1
57.0ms
phi1
Results
ErrorSegmentsBranch
14.1b1lambda1
14.1b1lambda2
14.1b1phi1
13.0b3phi2
14.1b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
14.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 2969 to 609 computations (79.5% saved)

bsearch180.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
66.0ms
9.848447366787235e-143
2.107841037619397e-142
112.0ms
7.759465488769463e-207
5.4798588043349186e-201
Results
117.0ms118×body1024valid
28.0ms40×body512valid
18.0ms61×body256valid
11.0msbody2048valid
Compiler

Compiled 987 to 639 computations (35.3% saved)

regimes462.0ms (0.8%)

Counts
122 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1)))) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (*.f64 lambda1 (cos.f64 phi2))) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 1 (*.f64 -1/2 (pow.f64 lambda1 2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 1/24 (pow.f64 phi2 4)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 lambda1 2) -1/2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) -1)) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 2))) (*.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)))))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 -1/2 (pow.f64 lambda1 2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (pow.f64 lambda1 2) (*.f64 (sin.f64 lambda2) 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

6 calls:

151.0ms
phi2
58.0ms
lambda2
55.0ms
(-.f64 lambda1 lambda2)
55.0ms
phi1
54.0ms
lambda1
Results
ErrorSegmentsBranch
14.1b1lambda1
14.1b1lambda2
14.1b1phi1
13.1b3phi2
14.1b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
14.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 2717 to 523 computations (80.8% saved)

bsearch179.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
64.0ms
9.848447366787235e-143
2.107841037619397e-142
113.0ms
1.290152283097559e-200
1.6333380319844477e-195
Results
128.0ms124×body1024valid
23.0ms38×body512valid
17.0ms59×body256valid
6.0msbody2048valid
Compiler

Compiled 819 to 527 computations (35.7% saved)

regimes297.0ms (0.5%)

Counts
88 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1)))) (sin.f64 phi1))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

5 calls:

105.0ms
phi2
44.0ms
(-.f64 lambda1 lambda2)
41.0ms
phi1
40.0ms
lambda1
38.0ms
lambda2
Results
ErrorSegmentsBranch
14.1b1lambda1
14.1b1lambda2
14.1b1phi1
13.1b3phi2
14.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1727 to 316 computations (81.7% saved)

bsearch185.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
68.0ms
9.848447366787235e-143
2.107841037619397e-142
116.0ms
1.290152283097559e-200
1.6333380319844477e-195
Results
123.0ms123×body1024valid
21.0ms32×body512valid
20.0ms63×body256valid
17.0msbody2048valid
Compiler

Compiled 819 to 527 computations (35.7% saved)

regimes12.9s (23%)

Counts
86 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

5 calls:

12.5s
phi2
167.0ms
lambda2
160.0ms
lambda1
40.0ms
phi1
39.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
13.8b3lambda1
13.8b3lambda2
19.5b1phi1
15.5b5phi2
19.5b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1679 to 311 computations (81.5% saved)

bsearch187.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
71.0ms
4.634980371138092e+23
1.640979521960893e+24
114.0ms
-13765.197537681663
-0.7483271625403056
Results
129.0ms110×body1024valid
29.0ms44×body512valid
18.0ms52×body256valid
5.0msbody2048valid
Compiler

Compiled 734 to 496 computations (32.4% saved)

regimes900.0ms (1.6%)

Counts
83 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
Calls

5 calls:

360.0ms
phi2
322.0ms
lambda2
104.0ms
lambda1
45.0ms
(-.f64 lambda1 lambda2)
39.0ms
phi1
Results
ErrorSegmentsBranch
13.8b3lambda1
13.8b3lambda2
19.5b1phi1
15.5b5phi2
19.5b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1608 to 308 computations (80.8% saved)

bsearch270.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
66.0ms
4.634980371138092e+23
1.640979521960893e+24
202.0ms
-13765.197537681663
-0.7483271625403056
Results
124.0ms110×body1024valid
75.0ms51×body256valid
57.0ms44×body512valid
9.0msbody2048valid
Compiler

Compiled 724 to 491 computations (32.2% saved)

regimes768.0ms (1.4%)

Counts
82 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
Calls

5 calls:

320.0ms
phi2
192.0ms
lambda1
103.0ms
lambda2
82.0ms
(-.f64 lambda1 lambda2)
38.0ms
phi1
Results
ErrorSegmentsBranch
13.8b3lambda1
13.8b3lambda2
19.5b1phi1
15.5b5phi2
19.5b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1586 to 307 computations (80.6% saved)

bsearch240.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
67.0ms
4.634980371138092e+23
1.640979521960893e+24
172.0ms
-13765.197537681663
-0.7483271625403056
Results
192.0ms123×body1024valid
25.0ms36×body512valid
16.0ms48×body256valid
2.0msbody2048valid
Compiler

Compiled 724 to 491 computations (32.2% saved)

regimes1.1s (1.9%)

Counts
80 → 7
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
Outputs
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))
Calls

5 calls:

369.0ms
lambda1
363.0ms
lambda2
172.0ms
phi2
118.0ms
(-.f64 lambda1 lambda2)
36.0ms
phi1
Results
ErrorSegmentsBranch
14.8b7lambda1
17.0b3lambda2
21.1b1phi1
20.1b3phi2
21.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1542 to 304 computations (80.3% saved)

bsearch1.4s (2.5%)

Algorithm
binary-search
Steps
TimeLeftRight
253.0ms
7.666734024559473e+182
6.029553875330291e+187
136.0ms
2.0283774476226808e-16
882.6474934914949
500.0ms
8.50313916130594e-80
7.497023693071577e-73
86.0ms
1.327462751808612e-143
1.2913802688528214e-142
153.0ms
-1.3986677522039455e-96
-4.7271268392156575e-99
277.0ms
-32990210442737.33
-210784811629.0236
Results
1.2s506×body1024valid
89.0ms113×body512valid
49.0ms158×body256valid
19.0msbody2048valid
Compiler

Compiled 2567 to 1760 computations (31.4% saved)

regimes1.1s (2%)

Counts
78 → 6
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))
Calls

5 calls:

368.0ms
lambda1
307.0ms
lambda2
274.0ms
phi2
41.0ms
(-.f64 lambda1 lambda2)
37.0ms
phi1
Results
ErrorSegmentsBranch
15.9b6lambda1
17.0b3lambda2
21.1b1phi1
20.1b3phi2
21.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1498 to 302 computations (79.8% saved)

bsearch828.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
176.0ms
7.666734024559473e+182
6.029553875330291e+187
151.0ms
2.0283774476226808e-16
882.6474934914949
142.0ms
8.50313916130594e-80
7.497023693071577e-73
95.0ms
1.327462751808612e-143
1.2913802688528214e-142
263.0ms
-9.854914167571227e-33
-8.354438411604131e-51
Results
598.0ms456×body1024valid
114.0ms134×body256valid
74.0ms103×body512valid
28.0ms11×body2048valid
Compiler

Compiled 2282 to 1566 computations (31.4% saved)

regimes458.0ms (0.8%)

Counts
77 → 4
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))
Calls

5 calls:

137.0ms
lambda1
109.0ms
phi2
104.0ms
lambda2
40.0ms
phi1
39.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
17.7b4lambda1
19.7b3lambda2
21.1b1phi1
20.1b3phi2
21.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1477 to 301 computations (79.6% saved)

bsearch459.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
166.0ms
7.666734024559473e+182
6.029553875330291e+187
158.0ms
2.0283774476226808e-16
882.6474934914949
135.0ms
-2.3848837237272804e+26
-32990210442737.33
Results
366.0ms312×body1024valid
48.0ms72×body512valid
26.0ms76×body256valid
8.0msbody2048valid
Compiler

Compiled 1492 to 1036 computations (30.6% saved)

regimes253.0ms (0.5%)

Counts
76 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (-.f64 1 (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) -1))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
Calls

5 calls:

89.0ms
phi2
38.0ms
(-.f64 lambda1 lambda2)
35.0ms
lambda2
33.0ms
lambda1
33.0ms
phi1
Results
ErrorSegmentsBranch
21.1b1lambda1
21.1b1lambda2
21.1b1phi1
20.1b3phi2
21.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1457 to 299 computations (79.5% saved)

bsearch178.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
63.0ms
9.848447366787235e-143
2.107841037619397e-142
114.0ms
1.290152283097559e-200
1.6333380319844477e-195
Results
126.0ms124×body1024valid
24.0ms40×body512valid
18.0ms58×body256valid
5.0msbody2048valid
Compiler

Compiled 777 to 513 computations (34% saved)

regimes161.0ms (0.3%)

Counts
63 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
Calls

5 calls:

31.0ms
(-.f64 lambda1 lambda2)
28.0ms
lambda1
28.0ms
lambda2
28.0ms
phi2
27.0ms
phi1
Results
ErrorSegmentsBranch
21.1b1lambda1
21.1b1lambda2
21.1b1phi1
21.1b1phi2
21.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1155 to 246 computations (78.7% saved)

regimes368.0ms (0.7%)

Counts
59 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

5 calls:

83.0ms
phi2
73.0ms
lambda1
73.0ms
(-.f64 lambda1 lambda2)
26.0ms
lambda2
25.0ms
phi1
Results
ErrorSegmentsBranch
20.6b3lambda1
21.8b1lambda2
21.8b1phi1
20.6b2phi2
20.4b3(-.f64 lambda1 lambda2)
Compiler

Compiled 1070 to 240 computations (77.6% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1213.657355242855
162525579645.1299
0.0ms
-4.634980371138092e+23
-163590655179616030.0
Compiler

Compiled 33 to 23 computations (30.3% saved)

regimes455.0ms (0.8%)

Counts
55 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (+.f64 lambda2 (-.f64 (PI.f64) lambda1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
Calls

5 calls:

206.0ms
phi1
71.0ms
lambda2
68.0ms
lambda1
66.0ms
phi2
26.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
20.8b3lambda1
20.7b3lambda2
21.6b3phi1
20.3b3phi2
24.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 986 to 235 computations (76.2% saved)

bsearch334.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
58.0ms
843866.1788361237
1480162.8776409985
275.0ms
-0.0005301600338029286
-1.690647130087506e-10
Results
275.0ms109×body1024valid
26.0ms40×body512valid
18.0ms54×body256valid
10.0msbody2048valid
Compiler

Compiled 685 to 452 computations (34% saved)

regimes367.0ms (0.7%)

Counts
45 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
Calls

5 calls:

108.0ms
lambda2
56.0ms
phi1
55.0ms
lambda1
54.0ms
phi2
21.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
21.4b3lambda1
21.8b3lambda2
21.6b3phi1
21.3b3phi2
24.7b1(-.f64 lambda1 lambda2)
Compiler

Compiled 786 to 204 computations (74% saved)

bsearch218.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
89.0ms
4.585602605180462e-13
2.8037232056541413e-11
129.0ms
-0.0005301600338029286
-1.690647130087506e-10
Results
151.0ms140×body1024valid
27.0ms37×body512valid
23.0ms73×body256valid
13.0msbody2048valid
Compiler

Compiled 787 to 535 computations (32% saved)

regimes256.0ms (0.5%)

Counts
35 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
Calls

5 calls:

112.0ms
lambda1
45.0ms
phi1
43.0ms
phi2
30.0ms
(-.f64 lambda1 lambda2)
16.0ms
lambda2
Results
ErrorSegmentsBranch
25.0b4lambda1
28.0b1lambda2
21.6b3phi1
21.5b3phi2
26.9b2(-.f64 lambda1 lambda2)
Compiler

Compiled 585 to 164 computations (72% saved)

bsearch376.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
187.0ms
7.233945004299451
843866.1788361237
189.0ms
-0.0005301600338029286
-1.690647130087506e-10
Results
241.0ms163×body1024valid
89.0ms70×body256valid
37.0ms53×body512valid
4.0msbody2048valid
Compiler

Compiled 827 to 563 computations (31.9% saved)

regimes184.0ms (0.3%)

Counts
25 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))
Calls

5 calls:

56.0ms
lambda1
41.0ms
phi1
39.0ms
phi2
23.0ms
(-.f64 lambda1 lambda2)
13.0ms
lambda2
Results
ErrorSegmentsBranch
25.0b4lambda1
28.0b1lambda2
21.8b3phi1
21.5b3phi2
26.9b2(-.f64 lambda1 lambda2)
Compiler

Compiled 398 to 130 computations (67.3% saved)

bsearch308.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
137.0ms
7.233945004299451
843866.1788361237
171.0ms
-0.0005301600338029286
-1.690647130087506e-10
Results
235.0ms173×body1024valid
45.0ms51×body512valid
20.0ms63×body256valid
2.0msbody2048valid
Compiler

Compiled 773 to 527 computations (31.8% saved)

regimes306.0ms (0.5%)

Counts
23 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi2 2) -1/2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (-.f64 -1 (*.f64 lambda2 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

5 calls:

88.0ms
(-.f64 lambda1 lambda2)
86.0ms
lambda1
58.0ms
lambda2
34.0ms
phi1
33.0ms
phi2
Results
ErrorSegmentsBranch
26.0b8lambda1
28.9b4lambda2
21.8b3phi1
22.1b3phi2
27.9b6(-.f64 lambda1 lambda2)
Compiler

Compiled 365 to 126 computations (65.5% saved)

bsearch270.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
120.0ms
8.930903822658715e-32
2.775632613716394e-28
149.0ms
-19.74904250678348
-0.0002992036454539508
Results
195.0ms168×body1024valid
42.0ms57×body512valid
17.0ms42×body256valid
10.0msbody2048valid
Compiler

Compiled 783 to 516 computations (34.1% saved)

regimes192.0ms (0.3%)

Counts
17 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (neg.f64 phi1))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

5 calls:

58.0ms
lambda1
41.0ms
(-.f64 lambda1 lambda2)
32.0ms
lambda2
26.0ms
phi1
25.0ms
phi2
Results
ErrorSegmentsBranch
27.4b7lambda1
29.0b4lambda2
22.0b3phi1
22.1b3phi2
29.2b4(-.f64 lambda1 lambda2)
Compiler

Compiled 262 to 99 computations (62.2% saved)

bsearch262.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
126.0ms
8.930903822658715e-32
2.775632613716394e-28
136.0ms
-19.74904250678348
-0.0002992036454539508
Results
193.0ms162×body1024valid
29.0ms46×body512valid
18.0ms55×body256valid
17.0msbody2048valid
Compiler

Compiled 647 to 448 computations (30.8% saved)

regimes127.0ms (0.2%)

Counts
12 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) (sin.f64 (neg.f64 phi1))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
Calls

5 calls:

33.0ms
lambda1
28.0ms
(-.f64 lambda1 lambda2)
21.0ms
lambda2
21.0ms
phi1
20.0ms
phi2
Results
ErrorSegmentsBranch
28.9b5lambda1
30.5b3lambda2
23.0b3phi1
22.1b3phi2
30.2b3(-.f64 lambda1 lambda2)
Compiler

Compiled 177 to 81 computations (54.2% saved)

bsearch266.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
132.0ms
7.233945004299451
843866.1788361237
133.0ms
-0.0005301600338029286
-1.690647130087506e-10
Results
191.0ms156×body1024valid
36.0ms53×body512valid
28.0ms77×body256valid
4.0msbody2048valid
Compiler

Compiled 665 to 455 computations (31.6% saved)

regimes86.0ms (0.2%)

Counts
10 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
Calls

5 calls:

20.0ms
lambda2
18.0ms
phi2
18.0ms
phi1
17.0ms
(-.f64 lambda1 lambda2)
7.0ms
lambda1
Results
ErrorSegmentsBranch
32.3b1lambda1
31.1b3lambda2
29.5b3phi1
28.5b3phi2
30.3b3(-.f64 lambda1 lambda2)
Compiler

Compiled 146 to 72 computations (50.7% saved)

bsearch187.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
130.0ms
1.1076959495506482e+29
1.552634421491277e+33
57.0ms
-4.2027829440827606e-75
-2.823385106760632e-75
Results
129.0ms108×body1024valid
22.0ms34×body512valid
22.0ms45×body256valid
11.0msbody2048valid
Compiler

Compiled 431 to 311 computations (27.8% saved)

regimes32.0ms (0.1%)

Counts
7 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (neg.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (*.f64 lambda2 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (+.f64 -1 (-.f64 1 (sin.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi2)) (sin.f64 phi2))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
Calls

5 calls:

7.0ms
(-.f64 lambda1 lambda2)
7.0ms
lambda1
6.0ms
phi1
5.0ms
phi2
5.0ms
lambda2
Results
ErrorSegmentsBranch
32.3b1lambda1
32.3b1lambda2
32.3b1phi1
32.3b1phi2
32.3b1(-.f64 lambda1 lambda2)
Compiler

Compiled 105 to 56 computations (46.7% saved)

regimes80.0ms (0.1%)

Counts
3 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
Outputs
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
Calls

5 calls:

29.0ms
(-.f64 lambda1 lambda2)
16.0ms
phi1
14.0ms
phi2
10.0ms
lambda1
9.0ms
lambda2
Results
ErrorSegmentsBranch
34.2b3lambda1
33.8b3lambda2
40.2b4phi1
37.0b4phi2
37.4b8(-.f64 lambda1 lambda2)
Compiler

Compiled 55 to 37 computations (32.7% saved)

bsearch180.0ms (0.3%)

Algorithm
binary-search
Steps
TimeLeftRight
71.0ms
4.634980371138092e+23
1.640979521960893e+24
108.0ms
-1.8813805381311375e-7
-3.89257941077655e-10
Results
132.0ms121×body1024valid
29.0ms47×body512valid
13.0ms39×body256valid
2.0msbody2048valid
Compiler

Compiled 386 to 296 computations (23.3% saved)

regimes37.0ms (0.1%)

Accuracy

Total -12.8b remaining (-33.1%)

Threshold costs -12.8b (-33.1%)

Counts
2 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
Outputs
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))
Calls

5 calls:

9.0ms
phi1
9.0ms
phi2
8.0ms
lambda2
8.0ms
lambda1
3.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
39.6b3lambda1
39.6b3lambda2
42.2b3phi1
38.5b3phi2
43.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 46 to 33 computations (28.3% saved)

bsearch216.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
119.0ms
1.1076959495506482e+29
1.552634421491277e+33
97.0ms
-0.03756496754745181
-0.0005301600338029286
Results
151.0ms136×body1024valid
33.0ms46×body512valid
17.0ms52×body256valid
12.0msbody2048valid
Compiler

Compiled 410 to 308 computations (24.9% saved)

simplify39.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02354997
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 lambda1 4099999999999999863010824754248508654367585347438453104161834278241058127753587248097785875271482833314009579520) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 7446130555187683/1378913065775496824682182051857728448902028277271278088224317349054049721856053955032165000485952146958446223387833982704161766047792183079895777875237766653530662154044294980748355504146827894396365898183024673030144) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi2 686479766013061/6864797660130609714981900799081393217269435300143305409394463459185543183397656052122559640661454554977296311391480858037121987999716643812574028291115057152) (atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 3703135674690055/42081087212386988057927919063041029324402718422585390875986247224549857234376646576909332290220707609815863750849425741704155458001470430905022518165215046799641789369027556785533310063074581738170346013886251008) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi2 360401877156857/3432398830065304857490950399540696608634717650071652704697231729592771591698828026061279820330727277488648155695740429018560993999858321906287014145557528576) (atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 824789309362785/42081087212386988057927919063041029324402718422585390875986247224549857234376646576909332290220707609815863750849425741704155458001470430905022518165215046799641789369027556785533310063074581738170346013886251008) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi2 686479766013061/6864797660130609714981900799081393217269435300143305409394463459185543183397656052122559640661454554977296311391480858037121987999716643812574028291115057152) (atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda2 -2206763817411543/2251799813685248) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda2 480000000000000000000000) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda2 -3152519739159347/2251799813685248) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda2 480000000000000000000000) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))))
(if (<=.f64 lambda2 -7746191359077253/9007199254740992) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda2 480000000000000000000000) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))))
(if (<=.f64 lambda1 -760000000000) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 lambda1 -6772219815005301/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (if (<=.f64 lambda1 4063960214797321/109836762562089755439710412785302291476310964802292886550311415346968690934362496833960954250583272879636740982263693728593951807995466301001184452657840914432) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda1 3023725277371503/15914343565113172548972231940698266883214596825515126958094847260581103904401068017057792) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (if (<=.f64 lambda1 1662273001970115/75557863725914323419136) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda1 54999999999999999724305012441479597313000345994048522429110119915942320969476072307009241911913122046615524566335190395827509043621602171932150169998757897916998259342732661202950840909824) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))))))))
(if (<=.f64 lambda1 -191822089899681/45671926166590716193865151022383844364247891968) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (if (<=.f64 lambda1 6590205753725385/109836762562089755439710412785302291476310964802292886550311415346968690934362496833960954250583272879636740982263693728593951807995466301001184452657840914432) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda1 55948864096101/124330809102446660538845562036705210025114037699336929360115994223289874253133343883264) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (if (<=.f64 lambda1 7932099951695107/36893488147419103232) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda1 27499999999999999862152506220739798656500172997024261214555059957971160484738036153504620955956561023307762283167595197913754521810801085966075084999378948958499129671366330601475420454912) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2)))))))
(if (<=.f64 lambda1 -1400000000000000) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (if (<=.f64 lambda1 662929865148937/288230376151711744) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (if (<=.f64 lambda1 59999999999999998293955459748065617179508780745512081086692010924142532454979260170730393980428706037691929860757452081825058581586410668520498854164831286548394947113133539967953348329472) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2)))))
(if (<=.f64 phi2 6164221759627/82189623461693336050640466920002010399224059419112091554660639110448939910891887845526039629337319550421608888377784651765928628909121935361372105791435638280550369861381946846744746216942542457363957058371584) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (if (<=.f64 phi2 686479766013061/6864797660130609714981900799081393217269435300143305409394463459185543183397656052122559640661454554977296311391480858037121987999716643812574028291115057152) (atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(if (<=.f64 (-.f64 lambda1 lambda2) -399999999999999966445568) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 (-.f64 lambda1 lambda2) 2000) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -6050532056176733/73786976294838206464) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (if (<=.f64 phi2 850000) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(if (<=.f64 phi2 -1438846037749345/18446744073709551616) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1))) (if (<=.f64 phi2 4332790137498831/154742504910672534362390528) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))))
(if (<=.f64 phi2 -6935975771714791/73786976294838206464) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1))) (if (<=.f64 phi2 8219069319951155/1125899906842624) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))))
(if (<=.f64 phi2 -7378697629483821/590295810358705651712) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1))) (if (<=.f64 phi2 8219069319951155/1125899906842624) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))))
(if (<=.f64 phi1 -5072854620270127/576460752303423488) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 1505300300900817/5575186299632655785383929568162090376495104) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5534023222112865/4611686018427387904) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 1505300300900817/5575186299632655785383929568162090376495104) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -8264141345021879/73786976294838206464) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi2 8219069319951155/1125899906842624) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 phi2 -4277775550302421/1018517988167243043134222844204689080525734196832968125318070224677190649881668353091698688) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi2 115000000000000005101481623552) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(if (<=.f64 lambda2 -4110347786689739/4835703278458516698824704) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 lambda2 480000000000000000000000) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 phi2 -5072854620270127/1152921504606846976) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi2 115000000000000005101481623552) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
Outputs
(if (<=.f64 lambda1 4099999999999999863010824754248508654367585347438453104161834278241058127753587248097785875271482833314009579520) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 7446130555187683/1378913065775496824682182051857728448902028277271278088224317349054049721856053955032165000485952146958446223387833982704161766047792183079895777875237766653530662154044294980748355504146827894396365898183024673030144) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi2 686479766013061/6864797660130609714981900799081393217269435300143305409394463459185543183397656052122559640661454554977296311391480858037121987999716643812574028291115057152) (atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 3703135674690055/42081087212386988057927919063041029324402718422585390875986247224549857234376646576909332290220707609815863750849425741704155458001470430905022518165215046799641789369027556785533310063074581738170346013886251008) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi2 360401877156857/3432398830065304857490950399540696608634717650071652704697231729592771591698828026061279820330727277488648155695740429018560993999858321906287014145557528576) (atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 824789309362785/42081087212386988057927919063041029324402718422585390875986247224549857234376646576909332290220707609815863750849425741704155458001470430905022518165215046799641789369027556785533310063074581738170346013886251008) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi2 686479766013061/6864797660130609714981900799081393217269435300143305409394463459185543183397656052122559640661454554977296311391480858037121987999716643812574028291115057152) (atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda2 -2206763817411543/2251799813685248) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda2 480000000000000000000000) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda2 -3152519739159347/2251799813685248) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda2 480000000000000000000000) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))))
(if (<=.f64 lambda2 -7746191359077253/9007199254740992) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda2 480000000000000000000000) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))))
(if (<=.f64 lambda1 -760000000000) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 lambda1 -6772219815005301/615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (if (<=.f64 lambda1 4063960214797321/109836762562089755439710412785302291476310964802292886550311415346968690934362496833960954250583272879636740982263693728593951807995466301001184452657840914432) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda1 3023725277371503/15914343565113172548972231940698266883214596825515126958094847260581103904401068017057792) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (if (<=.f64 lambda1 1662273001970115/75557863725914323419136) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda1 54999999999999999724305012441479597313000345994048522429110119915942320969476072307009241911913122046615524566335190395827509043621602171932150169998757897916998259342732661202950840909824) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2))))))))
(if (<=.f64 lambda1 -191822089899681/45671926166590716193865151022383844364247891968) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (if (<=.f64 lambda1 6590205753725385/109836762562089755439710412785302291476310964802292886550311415346968690934362496833960954250583272879636740982263693728593951807995466301001184452657840914432) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda1 55948864096101/124330809102446660538845562036705210025114037699336929360115994223289874253133343883264) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (if (<=.f64 lambda1 7932099951695107/36893488147419103232) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda1 27499999999999999862152506220739798656500172997024261214555059957971160484738036153504620955956561023307762283167595197913754521810801085966075084999378948958499129671366330601475420454912) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2)))))))
(if (<=.f64 lambda1 -1400000000000000) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (if (<=.f64 lambda1 662929865148937/288230376151711744) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (if (<=.f64 lambda1 59999999999999998293955459748065617179508780745512081086692010924142532454979260170730393980428706037691929860757452081825058581586410668520498854164831286548394947113133539967953348329472) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 (neg.f64 lambda2) (cos.f64 lambda1)) (*.f64 (pow.f64 lambda2 2) (*.f64 -1/2 (sin.f64 lambda1))))) (cos.f64 phi2)) (sin.f64 phi2)))))
(if (<=.f64 phi2 6164221759627/82189623461693336050640466920002010399224059419112091554660639110448939910891887845526039629337319550421608888377784651765928628909121935361372105791435638280550369861381946846744746216942542457363957058371584) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (if (<=.f64 phi2 686479766013061/6864797660130609714981900799081393217269435300143305409394463459185543183397656052122559640661454554977296311391480858037121987999716643812574028291115057152) (atan2.f64 (*.f64 (+.f64 (neg.f64 (sin.f64 lambda2)) lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(if (<=.f64 (-.f64 lambda1 lambda2) -399999999999999966445568) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 (-.f64 lambda1 lambda2) 2000) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -6050532056176733/73786976294838206464) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (if (<=.f64 phi2 850000) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))
(if (<=.f64 phi2 -1438846037749345/18446744073709551616) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1))) (if (<=.f64 phi2 4332790137498831/154742504910672534362390528) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 phi2 (cos.f64 phi1)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))))
(if (<=.f64 phi2 -6935975771714791/73786976294838206464) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1))) (if (<=.f64 phi2 8219069319951155/1125899906842624) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))))
(if (<=.f64 phi2 -7378697629483821/590295810358705651712) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1))) (if (<=.f64 phi2 8219069319951155/1125899906842624) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sin.f64 phi1)))))
(if (<=.f64 phi1 -5072854620270127/576460752303423488) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 1505300300900817/5575186299632655785383929568162090376495104) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 phi1)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5534023222112865/4611686018427387904) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 1505300300900817/5575186299632655785383929568162090376495104) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -8264141345021879/73786976294838206464) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi2 8219069319951155/1125899906842624) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 phi2 -4277775550302421/1018517988167243043134222844204689080525734196832968125318070224677190649881668353091698688) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi2 115000000000000005101481623552) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (sin.f64 phi1))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(if (<=.f64 lambda2 -4110347786689739/4835703278458516698824704) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 lambda2 480000000000000000000000) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 phi2 -5072854620270127/1152921504606846976) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi2 115000000000000005101481623552) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (sin.f64 phi2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
Compiler

Compiled 1719 to 724 computations (57.9% saved)

soundness449.0ms (0.8%)

Algorithm
egg-herbie
Rules
2034×rational.json-simplify-35
2034×rational.json-simplify-35
1800×rational.json-simplify-35
1366×rational.json-simplify-26
1082×rational.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02077
13877
26777
311177
419477
537477
683777
7219677
8486877
9585177
10665177
11743777
02077
13877
26777
311177
419477
537477
683777
7219677
8486877
9585177
10665177
11743777
02493422
15913250
213373144
323642998
440642998
550952998
666872998
776492998
Stop Event
node limit
node limit
node limit
Compiler

Compiled 518 to 165 computations (68.1% saved)

end337.0ms (0.6%)

Compiler

Compiled 1623 to 281 computations (82.7% saved)

Profiling

Loading profile data...