Details

Time bar (total: 31.5s)

analyze639.0ms (2%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
0%0%99.9%0.1%0%0%0%6
0%0%99.9%0.1%0%0%0%7
25%25%74.9%0.1%0%0%0%8
54.7%54.6%45.2%0.1%0%0%0%9
56.3%56.2%43.7%0.1%0%0%0%10
62.5%62.4%37.4%0.1%0%0%0%11
66%65.9%33.9%0.1%0%0%0%12
Compiler

Compiled 20 to 15 computations (25% saved)

sample8.0s (25.5%)

Results
6.2s4812×body1024valid
1.1s1445×body512valid
683.0ms1984×body256valid
23.0ms15×body2048valid
Bogosity

preprocess116.0ms (0.4%)

Algorithm
egg-herbie
Rules
779×associate-/l/_binary64
735×associate-/r/_binary64
593×associate-*r/_binary64
437×associate-*l*_binary64
432×sqr-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
027104
15472
211472
322172
464772
5294172
6460372
7552572
8579972
9612272
10655372
11779972
033
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 th) 2)))) (sin.f64 ky))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 th) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 kx))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 th) 2)))))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) (hypot.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 th) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 th) 2)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 th))))
Compiler

Compiled 22 to 17 computations (22.7% saved)

simplify85.0ms (0.3%)

Algorithm
egg-herbie
Rules
796×sqr-pow_binary64
698×associate-/r*_binary64
383×associate-*l*_binary64
374×cube-prod_binary64
360×fabs-mul_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01426
12618
25118
37918
415918
546018
6171018
7305618
8391618
9416818
10450518
11499718
12567718
13734318
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))

eval1.0ms (0%)

Compiler

Compiled 30 to 17 computations (43.3% saved)

prune2.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.1b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
3.7b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
Compiler

Compiled 33 to 23 computations (30.3% saved)

localize15.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
0.3b
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
Compiler

Compiled 36 to 9 computations (75% saved)

series34.0ms (0.1%)

Counts
3 → 96
Calls

24 calls:

TimeVariablePointExpression
4.0ms
kx
@0
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
4.0ms
ky
@-inf
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
3.0ms
ky
@inf
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
3.0ms
ky
@0
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
3.0ms
ky
@-inf
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))

rewrite70.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
525×log-prod_binary64
408×exp-prod_binary64
302×pow-prod-down_binary64
277×pow2_binary64
195×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01039
120339
2259739
Stop Event
node limit
Counts
3 → 111
Calls
Call 1
Inputs
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 1) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 2)) (*.f64 (cbrt.f64 (sin.f64 th)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2) (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 th)) (*.f64 (sqrt.f64 (sin.f64 th)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 th)) (/.f64 1 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 2)) 1) (/.f64 (cbrt.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) 1) (/.f64 (sqrt.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2) (/.f64 (sin.f64 th) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 2)) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))) (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))) (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1/2) (/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 2)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (cbrt.f64 (sin.f64 th)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (cbrt.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (sqrt.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)) (cbrt.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sqrt.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1) 1))))))

simplify132.0ms (0.4%)

Algorithm
egg-herbie
Rules
612×times-frac_binary64
537×associate-/l*_binary64
400×associate-/r*_binary64
395×associate-*l/_binary64
365×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02253857
16993696
225073504
Stop Event
node limit
Counts
207 → 176
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th)
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(/.f64 (sin.f64 th) (sin.f64 kx))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 5))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 6))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(/.f64 (sin.f64 th) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 kx 6))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(sin.f64 kx)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (sin.f64 kx))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (sin.f64 kx))))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sin.f64 ky)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
Outputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 3) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)))
(fma.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (/.f64 1/120 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 3) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))))
(fma.f64 (+.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120 (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) -1/2)) (*.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))) (pow.f64 ky 5) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (*.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))))))) (pow.f64 ky 7) (*.f64 (+.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(+.f64 (fma.f64 (-.f64 (/.f64 -1/5040 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/120 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (/.f64 (*.f64 1/2 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (pow.f64 (sin.f64 kx) 2) (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))))))) (pow.f64 ky 7) (*.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 3))) (fma.f64 (-.f64 (/.f64 1/120 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 5) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))))
(+.f64 (fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040) (fma.f64 1/2 (/.f64 (+.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120 (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) -1/2)) (*.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 2/45 (/.f64 (+.f64 1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) 1/2)) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) -1/2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 7) (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3))) (fma.f64 (+.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120 (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) -1/2)) (*.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))) (pow.f64 ky 5) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 th (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3)))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky))))))
(+.f64 (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/5040 (pow.f64 th 7))))) (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) (*.f64 1/120 (pow.f64 th 5))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (sin.f64 th)) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th)))
(-.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (sin.f64 th)) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (/.f64 (*.f64 (sin.f64 th) -1/4) (pow.f64 (sin.f64 ky) 4))) (pow.f64 kx 4)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) (+.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th)) (neg.f64 (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))) (pow.f64 kx 6)))))
(-.f64 (-.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2))))) (*.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 kx 6))) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4)))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (sin.f64 th)) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (/.f64 (*.f64 (sin.f64 th) -1/4) (pow.f64 (sin.f64 ky) 4))) (pow.f64 kx 4))) (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (/.f64 (*.f64 (sin.f64 th) -1/4) (pow.f64 (sin.f64 ky) 4))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2))))) (*.f64 (/.f64 (*.f64 (sin.f64 th) 1/4) (pow.f64 (sin.f64 ky) 4)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))))) (pow.f64 kx 6)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th)
(*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 th (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3)) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(fma.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (pow.f64 th 3) -1/6)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th)))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5)) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3)) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5)) (fma.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (pow.f64 th 3) -1/6))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5)) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3)))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5)) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3)) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 7)) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5)) (fma.f64 (*.f64 -1/6 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 th 3) (fma.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (pow.f64 th 7) -1/5040)))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) (*.f64 -1/5040 (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 1/120 (pow.f64 th 5)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(/.f64 (sin.f64 th) (sin.f64 kx))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (*.f64 ky ky))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 ky ky)) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (*.f64 ky ky))) (fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4)) (/.f64 (sin.f64 th) (sin.f64 kx))))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 ky ky)) (-.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)))) (pow.f64 ky 4))))
(-.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (*.f64 ky ky))) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 5) -1/4))) (pow.f64 ky 4)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 5))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 6))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (*.f64 ky ky))) (fma.f64 -1 (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 5) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (*.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th)))))) (pow.f64 ky 6)) (fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4)) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 ky ky)) (-.f64 (-.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)))) (pow.f64 ky 4))) (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (/.f64 (*.f64 1/2 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (*.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 6))))
(-.f64 (-.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (*.f64 ky ky))) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 5) -1/4))) (pow.f64 ky 4))) (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 5) -1/4))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 2/45 (/.f64 (+.f64 1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) 1/2)) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (/.f64 (*.f64 (sin.f64 th) 1/4) (pow.f64 (sin.f64 kx) 5)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))) (pow.f64 ky 6)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(/.f64 (sin.f64 th) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (/.f64 (sin.f64 th) (sin.f64 ky)))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 3)) (/.f64 (sin.f64 th) (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (*.f64 kx kx)) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4)))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 3)) (/.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (*.f64 kx kx)) (/.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))))))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (*.f64 kx kx)) (fma.f64 (+.f64 (/.f64 1/4 (/.f64 (pow.f64 (sin.f64 ky) 5) (sin.f64 th))) (/.f64 1/2 (/.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))) (pow.f64 kx 4) (/.f64 (sin.f64 th) (sin.f64 ky))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 kx 6))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 3)) (/.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 -1 (+.f64 (*.f64 (pow.f64 kx 6) (fma.f64 1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))))) (fma.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 5) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))) (*.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))))))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (*.f64 kx kx)) (fma.f64 -1 (fma.f64 (pow.f64 kx 6) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2))))) (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)))) (pow.f64 (sin.f64 ky) 2)) (*.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)))))) (/.f64 (sin.f64 th) (sin.f64 ky))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (*.f64 kx kx)) (/.f64 (sin.f64 th) (sin.f64 ky))) (fma.f64 (pow.f64 kx 6) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2))))) (fma.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (/.f64 (+.f64 (/.f64 1/8 (/.f64 (pow.f64 (sin.f64 ky) 5) (sin.f64 th))) (/.f64 1/4 (/.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (*.f64 (/.f64 -1/4 (pow.f64 (sin.f64 ky) 5)) (sin.f64 th))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(sin.f64 kx)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (sin.f64 kx))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx))
(fma.f64 1/2 (/.f64 ky (/.f64 (sin.f64 kx) ky)) (sin.f64 kx))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx)))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (sin.f64 kx) (pow.f64 ky 4)))))
(fma.f64 1/2 (/.f64 ky (/.f64 (sin.f64 kx) ky)) (fma.f64 -1/2 (/.f64 (pow.f64 ky 4) (/.f64 (sin.f64 kx) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (sin.f64 kx)))
(fma.f64 1/2 (/.f64 ky (/.f64 (sin.f64 kx) ky)) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (pow.f64 ky 4)) (sin.f64 kx)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (sin.f64 kx))))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx)) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (sin.f64 kx) (pow.f64 ky 4))) (*.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (sin.f64 kx) (pow.f64 ky 6))))))
(+.f64 (fma.f64 1/2 (/.f64 ky (/.f64 (sin.f64 kx) ky)) (sin.f64 kx)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (/.f64 (*.f64 1/2 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (sin.f64 kx)) (pow.f64 ky 6)) (*.f64 -1/2 (/.f64 (pow.f64 ky 4) (/.f64 (sin.f64 kx) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (pow.f64 ky 4)) (sin.f64 kx)) (*.f64 1/2 (+.f64 (*.f64 (/.f64 (+.f64 2/45 (/.f64 (+.f64 1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) 1/2)) (pow.f64 (sin.f64 kx) 2))) (sin.f64 kx)) (pow.f64 ky 6)) (/.f64 ky (/.f64 (sin.f64 kx) ky)))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 ky)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))
(fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))
(fma.f64 1/2 (*.f64 (/.f64 kx (sin.f64 ky)) kx) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky)))
(fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (/.f64 (sin.f64 ky) (pow.f64 kx 4))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (*.f64 (/.f64 kx (sin.f64 ky)) kx) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))))
(fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (/.f64 (sin.f64 ky) (pow.f64 kx 4))) (fma.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (/.f64 (sin.f64 ky) (pow.f64 kx 6))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 ky)) (pow.f64 kx 6)) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (*.f64 (/.f64 (pow.f64 kx 6) (sin.f64 ky)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2))))) (fma.f64 1/2 (*.f64 (/.f64 kx (sin.f64 ky)) kx) (sin.f64 ky))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))

localize52.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
0.2b
(pow.f64 (sin.f64 kx) 2)
0.3b
(pow.f64 (sin.f64 ky) 2)
3.4b
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
Compiler

Compiled 69 to 37 computations (46.4% saved)

series29.0ms (0.1%)

Counts
4 → 56
Calls

18 calls:

TimeVariablePointExpression
12.0ms
ky
@0
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
4.0ms
kx
@0
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
2.0ms
ky
@inf
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
2.0ms
ky
@-inf
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
2.0ms
kx
@inf
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))

rewrite104.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
647×prod-diff_binary64
521×log-prod_binary64
336×pow-prod-down_binary64
291×pow2_binary64
226×fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01149
123933
2304933
Stop Event
node limit
Counts
4 → 114
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))
(pow.f64 (sin.f64 ky) 2)
(pow.f64 (sin.f64 kx) 2)
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 (sin.f64 ky) 4))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (hypot.f64 (pow.f64 (sin.f64 kx) 3) (pow.f64 (sin.f64 ky) 3)) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 (sin.f64 ky) 4)) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 6) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (sin.f64 ky) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 ky) 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 ky) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 ky) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 ky) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 ky) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 ky) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (sin.f64 ky) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (pow.f64 (cbrt.f64 (sin.f64 ky)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 4) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sqrt.f64 (sin.f64 ky)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) 3) (sqrt.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (cbrt.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 ky ky)) (cos.f64 (+.f64 ky ky))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 ky) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sin.f64 ky) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 ky) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 ky) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sin.f64 ky) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sin.f64 ky) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (sin.f64 ky))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (sin.f64 kx) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 kx) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 kx) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 kx) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (sin.f64 kx) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 kx)) 2) (cbrt.f64 (pow.f64 (sin.f64 kx) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sqrt.f64 (sin.f64 kx)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) 3) (sqrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 kx) (pow.f64 (cbrt.f64 (sin.f64 kx)) 2)) (cbrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 kx kx)) (cos.f64 (+.f64 kx kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 kx) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 kx) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 kx) 6))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) 2)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 2) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) -2) (/.f64 (sin.f64 ky) (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2)) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2)) (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) -1/2) (/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (cbrt.f64 (sin.f64 ky)) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 1))))))

simplify94.0ms (0.3%)

Algorithm
egg-herbie
Rules
719×fma-def_binary64
688×associate-*r*_binary64
656×associate-*l*_binary64
350×distribute-rgt-in_binary64
347×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01821683
15261536
217641516
Stop Event
node limit
Counts
170 → 161
Calls
Call 1
Inputs
(sin.f64 ky)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sin.f64 kx)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (sin.f64 kx))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx)))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (sin.f64 kx))))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(pow.f64 ky 2)
(+.f64 (*.f64 -1/3 (pow.f64 ky 4)) (pow.f64 ky 2))
(+.f64 (*.f64 -1/3 (pow.f64 ky 4)) (+.f64 (pow.f64 ky 2) (*.f64 2/45 (pow.f64 ky 6))))
(+.f64 (*.f64 -1/3 (pow.f64 ky 4)) (+.f64 (pow.f64 ky 2) (+.f64 (*.f64 -1/315 (pow.f64 ky 8)) (*.f64 2/45 (pow.f64 ky 6)))))
(pow.f64 kx 2)
(+.f64 (pow.f64 kx 2) (*.f64 -1/3 (pow.f64 kx 4)))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (*.f64 2/45 (pow.f64 kx 6))))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (+.f64 (*.f64 2/45 (pow.f64 kx 6)) (*.f64 -1/315 (pow.f64 kx 8)))))
(/.f64 ky (sin.f64 kx))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (/.f64 ky (sin.f64 kx)))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (*.f64 1/12 (/.f64 1 (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (/.f64 ky (sin.f64 kx))))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (*.f64 1/12 (/.f64 1 (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 -1/12 (*.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (sin.f64 kx))) (*.f64 -1/2 (*.f64 (sin.f64 kx) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 kx) 6))) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 kx) 4))) (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (pow.f64 (sin.f64 kx) 2))))))))) (+.f64 (*.f64 1/5040 (/.f64 1 (sin.f64 kx))) (*.f64 1/240 (/.f64 1 (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 7)) (/.f64 ky (sin.f64 kx)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
1
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4)))) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
Outputs
(sin.f64 ky)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))
(fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))
(fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky)))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.f64 (sin.f64 ky) (pow.f64 kx 4))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky)))
(+.f64 (sin.f64 ky) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (/.f64 (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) -1/6)) (sin.f64 ky))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.f64 (sin.f64 ky) (pow.f64 kx 4))) (fma.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (/.f64 (sin.f64 ky) (pow.f64 kx 6))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 ky)) (pow.f64 kx 6)) (fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) kx)) (sin.f64 ky))))
(fma.f64 1/2 (fma.f64 (/.f64 (-.f64 2/45 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) -1/6) (pow.f64 (sin.f64 ky) 2))) (sin.f64 ky)) (pow.f64 kx 6) (/.f64 (*.f64 kx kx) (sin.f64 ky))) (+.f64 (sin.f64 ky) (/.f64 (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) -1/6)) (sin.f64 ky))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (sin.f64 kx))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx))
(fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (sin.f64 kx))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx)))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (sin.f64 kx) (pow.f64 ky 4)))))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (pow.f64 ky 4)) (sin.f64 kx)))
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (sin.f64 kx)) (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (/.f64 (sin.f64 kx) (pow.f64 ky 4))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (sin.f64 kx))) (+.f64 (sin.f64 kx) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (sin.f64 kx))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 6)) (sin.f64 kx))))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx)) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (sin.f64 kx) (pow.f64 ky 4))) (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (sin.f64 kx) (pow.f64 ky 6))))))
(+.f64 (fma.f64 1/2 (/.f64 (*.f64 ky ky) (sin.f64 kx)) (sin.f64 kx)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 kx)) (pow.f64 ky 6)) (/.f64 (*.f64 (*.f64 -1/2 (pow.f64 ky 4)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (sin.f64 kx))))
(+.f64 (sin.f64 kx) (fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 2))) (sin.f64 kx)) (pow.f64 ky 6)) (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (/.f64 (sin.f64 kx) (pow.f64 ky 4))))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(pow.f64 ky 2)
(*.f64 ky ky)
(+.f64 (*.f64 -1/3 (pow.f64 ky 4)) (pow.f64 ky 2))
(fma.f64 -1/3 (pow.f64 ky 4) (*.f64 ky ky))
(fma.f64 (pow.f64 ky 4) -1/3 (*.f64 ky ky))
(fma.f64 ky ky (*.f64 (pow.f64 ky 4) -1/3))
(+.f64 (*.f64 -1/3 (pow.f64 ky 4)) (+.f64 (pow.f64 ky 2) (*.f64 2/45 (pow.f64 ky 6))))
(+.f64 (fma.f64 -1/3 (pow.f64 ky 4) (*.f64 ky ky)) (*.f64 2/45 (pow.f64 ky 6)))
(fma.f64 (pow.f64 ky 4) -1/3 (fma.f64 2/45 (pow.f64 ky 6) (*.f64 ky ky)))
(fma.f64 ky ky (fma.f64 2/45 (pow.f64 ky 6) (*.f64 (pow.f64 ky 4) -1/3)))
(+.f64 (*.f64 -1/3 (pow.f64 ky 4)) (+.f64 (pow.f64 ky 2) (+.f64 (*.f64 -1/315 (pow.f64 ky 8)) (*.f64 2/45 (pow.f64 ky 6)))))
(+.f64 (fma.f64 -1/3 (pow.f64 ky 4) (*.f64 ky ky)) (fma.f64 -1/315 (pow.f64 ky 8) (*.f64 2/45 (pow.f64 ky 6))))
(fma.f64 (pow.f64 ky 4) -1/3 (fma.f64 ky ky (fma.f64 2/45 (pow.f64 ky 6) (*.f64 -1/315 (pow.f64 ky 8)))))
(fma.f64 (pow.f64 ky 4) -1/3 (fma.f64 2/45 (pow.f64 ky 6) (fma.f64 ky ky (*.f64 -1/315 (pow.f64 ky 8)))))
(pow.f64 kx 2)
(*.f64 kx kx)
(+.f64 (pow.f64 kx 2) (*.f64 -1/3 (pow.f64 kx 4)))
(+.f64 (*.f64 kx kx) (*.f64 (pow.f64 kx 4) -1/3))
(fma.f64 (pow.f64 kx 4) -1/3 (*.f64 kx kx))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (*.f64 2/45 (pow.f64 kx 6))))
(+.f64 (*.f64 kx kx) (fma.f64 -1/3 (pow.f64 kx 4) (*.f64 2/45 (pow.f64 kx 6))))
(fma.f64 kx kx (fma.f64 (pow.f64 kx 4) -1/3 (*.f64 2/45 (pow.f64 kx 6))))
(fma.f64 (pow.f64 kx 4) -1/3 (fma.f64 2/45 (pow.f64 kx 6) (*.f64 kx kx)))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (+.f64 (*.f64 2/45 (pow.f64 kx 6)) (*.f64 -1/315 (pow.f64 kx 8)))))
(+.f64 (*.f64 kx kx) (fma.f64 -1/3 (pow.f64 kx 4) (fma.f64 2/45 (pow.f64 kx 6) (*.f64 -1/315 (pow.f64 kx 8)))))
(fma.f64 kx kx (fma.f64 (pow.f64 kx 4) -1/3 (fma.f64 2/45 (pow.f64 kx 6) (*.f64 -1/315 (pow.f64 kx 8)))))
(fma.f64 (pow.f64 kx 4) -1/3 (fma.f64 kx kx (fma.f64 -1/315 (pow.f64 kx 8) (*.f64 2/45 (pow.f64 kx 6)))))
(/.f64 ky (sin.f64 kx))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (/.f64 ky (sin.f64 kx)))
(fma.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (/.f64 ky (sin.f64 kx)))
(-.f64 (/.f64 ky (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (*.f64 1/12 (/.f64 1 (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (/.f64 ky (sin.f64 kx))))
(fma.f64 (fma.f64 1/2 (*.f64 (sin.f64 kx) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)))) (+.f64 (/.f64 1/120 (sin.f64 kx)) (/.f64 1/12 (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 5) (fma.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (/.f64 ky (sin.f64 kx))))
(fma.f64 (fma.f64 1/2 (*.f64 (sin.f64 kx) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)))) (+.f64 (/.f64 1/120 (sin.f64 kx)) (/.f64 1/12 (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 5) (-.f64 (/.f64 ky (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))))))
(fma.f64 (fma.f64 (sin.f64 kx) (+.f64 (*.f64 (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) 1/2) (/.f64 1/2 (pow.f64 (sin.f64 kx) 6))) (+.f64 (/.f64 1/120 (sin.f64 kx)) (/.f64 1/12 (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 5) (-.f64 (/.f64 ky (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (*.f64 1/12 (/.f64 1 (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 -1/12 (*.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (sin.f64 kx))) (*.f64 -1/2 (*.f64 (sin.f64 kx) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 kx) 6))) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 kx) 4))) (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4)))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (pow.f64 (sin.f64 kx) 2))))))))) (+.f64 (*.f64 1/5040 (/.f64 1 (sin.f64 kx))) (*.f64 1/240 (/.f64 1 (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 7)) (/.f64 ky (sin.f64 kx)))))
(fma.f64 (fma.f64 1/2 (*.f64 (sin.f64 kx) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)))) (+.f64 (/.f64 1/120 (sin.f64 kx)) (/.f64 1/12 (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 5) (fma.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (fma.f64 (-.f64 (fma.f64 -1/12 (*.f64 (sin.f64 kx) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)))) (*.f64 -1/2 (*.f64 (sin.f64 kx) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 kx) 6)) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 kx) 4)) (*.f64 -1/2 (/.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (pow.f64 (sin.f64 kx) 2))))))))) (+.f64 (/.f64 1/5040 (sin.f64 kx)) (/.f64 1/240 (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 7) (/.f64 ky (sin.f64 kx)))))
(fma.f64 (fma.f64 1/2 (*.f64 (sin.f64 kx) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)))) (+.f64 (/.f64 1/120 (sin.f64 kx)) (/.f64 1/12 (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 5) (-.f64 (fma.f64 (-.f64 (fma.f64 -1/2 (*.f64 (sin.f64 kx) (+.f64 (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (pow.f64 (sin.f64 kx) 2)) (/.f64 2/45 (pow.f64 (sin.f64 kx) 4))) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 kx) 6)) (/.f64 1 (pow.f64 (sin.f64 kx) 8))))) (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (*.f64 (sin.f64 kx) -1/12))) (+.f64 (/.f64 1/5040 (sin.f64 kx)) (/.f64 1/240 (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 7) (/.f64 ky (sin.f64 kx))) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))))))
(fma.f64 (fma.f64 (sin.f64 kx) (+.f64 (*.f64 (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) 1/2) (/.f64 1/2 (pow.f64 (sin.f64 kx) 6))) (+.f64 (/.f64 1/120 (sin.f64 kx)) (/.f64 1/12 (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 5) (fma.f64 (+.f64 (*.f64 (sin.f64 kx) (+.f64 (+.f64 (*.f64 (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) -1/12) (/.f64 -1/12 (pow.f64 (sin.f64 kx) 6))) (*.f64 -1/2 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 kx) 4)) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (pow.f64 (sin.f64 kx) 2)) (/.f64 2/3 (pow.f64 (sin.f64 kx) 6)))))))) (+.f64 (/.f64 -1/5040 (sin.f64 kx)) (/.f64 -1/240 (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 7) (-.f64 (/.f64 ky (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
1
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1)
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1)
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1)
(fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1) (*.f64 1/2 (*.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2)))))
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2))) 1))
(fma.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (*.f64 (pow.f64 kx 4) (*.f64 (pow.f64 (sin.f64 ky) 2) 1/2)) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4)))) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1) (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2))) (*.f64 -1/2 (*.f64 (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (pow.f64 (sin.f64 ky) 2)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6))))))
(+.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (fma.f64 -1/2 (*.f64 (pow.f64 kx 6) (*.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (+.f64 (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (pow.f64 (sin.f64 ky) 2)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))) (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)))))) (*.f64 1/2 (*.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2))))))
(+.f64 1 (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) (*.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (pow.f64 kx 4))) (*.f64 (fma.f64 -1/2 (+.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 8)) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (pow.f64 (sin.f64 ky) 2)) (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)))) (/.f64 -1/45 (pow.f64 (sin.f64 ky) 4))) (pow.f64 kx 6))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))

eval239.0ms (0.8%)

Compiler

Compiled 8853 to 4300 computations (51.4% saved)

prune170.0ms (0.5%)

Pruning

23 alts after pruning (22 fresh and 1 done)

PrunedKeptTotal
New31522337
Fresh000
Picked101
Done011
Total31623339
Error
0b
Counts
339 → 23
Alt Table
Click to see full alt table
StatusErrorProgram
32.3b
(*.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))
0.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
33.5b
(*.f64 (*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th))
52.9b
(*.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1) (sin.f64 th))
33.6b
(*.f64 (sin.f64 ky) (exp.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
49.7b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
9.5b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
2.8b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
0.2b
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) -1) (sin.f64 th))
0.3b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
15.5b
(*.f64 (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (sin.f64 th))
30.8b
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)
49.7b
(sin.f64 th)
48.1b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
49.3b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
0.4b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
49.5b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
49.4b
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
0.4b
(*.f64 (sin.f64 ky) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) -1))
48.1b
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
0.2b
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
2.7b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.3b
(*.f64 (*.f64 (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)) (sin.f64 th))
Compiler

Compiled 648 to 447 computations (31% saved)

localize33.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
0.2b
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
0.2b
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Compiler

Compiled 36 to 9 computations (75% saved)

series18.0ms (0.1%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
3.0ms
ky
@0
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
2.0ms
ky
@0
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
2.0ms
kx
@0
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
1.0ms
ky
@-inf
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
1.0ms
kx
@inf
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))

rewrite95.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
525×log-prod_binary64
408×exp-prod_binary64
301×pow-prod-down_binary64
277×pow2_binary64
195×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01031
120331
2260031
Stop Event
node limit
Counts
2 → 82
Calls
Call 1
Inputs
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -2)) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2) (/.f64 (sin.f64 ky) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1/2) (/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (cbrt.f64 (sin.f64 ky)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (cbrt.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (sqrt.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 1) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) 2)) (cbrt.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (sqrt.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 1) 1))))))

simplify114.0ms (0.4%)

Algorithm
egg-herbie
Rules
915×fma-def_binary64
669×associate-*l*_binary64
402×times-frac_binary64
385×distribute-rgt-in_binary64
373×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01902853
16052823
222512658
Stop Event
node limit
Counts
142 → 123
Calls
Call 1
Inputs
(/.f64 ky (sin.f64 kx))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (/.f64 ky (sin.f64 kx)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 1/5040 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 ky 7))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
1
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) 1))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) (+.f64 1 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
Outputs
(/.f64 ky (sin.f64 kx))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (/.f64 ky (sin.f64 kx)))
(fma.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (/.f64 ky (sin.f64 kx)))
(-.f64 (/.f64 ky (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx))))
(fma.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (fma.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 -1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx))))
(-.f64 (fma.f64 (+.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx))) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))))
(fma.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (+.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 -1/4 (pow.f64 (sin.f64 kx) 3)) (/.f64 -1/12 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 5) (-.f64 (/.f64 ky (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 1/5040 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 ky 7))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx)))))
(fma.f64 -1 (*.f64 (fma.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3)) (+.f64 (/.f64 1/5040 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 -1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))))) (pow.f64 ky 7)) (fma.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (fma.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 -1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx)))))
(fma.f64 (neg.f64 (fma.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3)) (fma.f64 1/2 (+.f64 (/.f64 (+.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (/.f64 1/5040 (sin.f64 kx))))) (pow.f64 ky 7) (-.f64 (fma.f64 (+.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx))) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))))))
(-.f64 (fma.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (+.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 -1/4 (pow.f64 (sin.f64 kx) 3)) (/.f64 -1/12 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx))) (fma.f64 (fma.f64 1/2 (fma.f64 (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (+.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 -1/4 (pow.f64 (sin.f64 kx) 3)) (/.f64 -1/12 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2))) (fma.f64 1/2 (/.f64 (fma.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)) 2/45) (pow.f64 (sin.f64 kx) 3)) (/.f64 1/5040 (sin.f64 kx)))) (pow.f64 ky 7) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
1
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1)
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1)
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1)
(fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) 1))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4) 1))
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4) 1))
(fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2))) (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) (+.f64 1 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (+.f64 (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4) 1) (neg.f64 (*.f64 (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2)) (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6)))))
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (-.f64 (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4) 1) (*.f64 (fma.f64 1/2 (-.f64 (/.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (pow.f64 (sin.f64 ky) 2)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))) (fma.f64 1/2 (-.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 2)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))) (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))
(-.f64 (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2))) (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1)) (*.f64 (fma.f64 1/2 (+.f64 (-.f64 (/.f64 1/4 (pow.f64 (pow.f64 (sin.f64 ky) 2) 3)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 4))) (-.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 2)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 4)))) (/.f64 (fma.f64 1/4 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/12) (pow.f64 (sin.f64 ky) 4))) (pow.f64 kx 6)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))))))
(fma.f64 (pow.f64 ky 3) (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))
(fma.f64 (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5) (+.f64 (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))))))
(fma.f64 (pow.f64 ky 5) (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (fma.f64 (pow.f64 ky 3) (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(fma.f64 (pow.f64 ky 5) (fma.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 (/.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (fma.f64 (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5) (+.f64 (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))))))) (pow.f64 ky 7) (*.f64 (pow.f64 ky 3) (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))))))))
(+.f64 (fma.f64 (pow.f64 ky 5) (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (fma.f64 (pow.f64 ky 3) (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))) (*.f64 (pow.f64 ky 7) (-.f64 (/.f64 -1/5040 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (*.f64 -1/2 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))))))
(fma.f64 (pow.f64 ky 5) (fma.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 (/.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (fma.f64 (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (fma.f64 (pow.f64 ky 7) (-.f64 (*.f64 (/.f64 -1/5040 (sin.f64 kx)) (sin.f64 th)) (fma.f64 1/2 (/.f64 (fma.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 (/.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (fma.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)) 2/45) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (/.f64 (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)) (pow.f64 (sin.f64 kx) 2))))) (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(fma.f64 -1 (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))))))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(fma.f64 -1 (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))) (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (neg.f64 (*.f64 (pow.f64 kx 6) (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))))))))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (pow.f64 kx 6) (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2))))) (*.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))))))
(-.f64 (-.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))))) (*.f64 (pow.f64 kx 6) (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (-.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 2)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 4))) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (fma.f64 1/4 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/12))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) -1/6)))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 th (*.f64 (pow.f64 th 3) -1/6)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) -1/6))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 th (*.f64 (pow.f64 th 3) -1/6))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3))) (fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 7)) -1/5040)))))
(+.f64 (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 th (*.f64 (pow.f64 th 7) -1/5040))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 5) 1/120))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))

localize8.0ms (0%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

localize28.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (sin.f64 th) (sin.f64 ky))
0.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
Compiler

Compiled 22 to 7 computations (68.2% saved)

series11.0ms (0%)

Counts
2 → 32
Calls

12 calls:

TimeVariablePointExpression
3.0ms
ky
@0
(/.f64 (sin.f64 th) (sin.f64 ky))
1.0ms
ky
@-inf
(/.f64 (sin.f64 th) (sin.f64 ky))
1.0ms
ky
@inf
(/.f64 (sin.f64 th) (sin.f64 ky))
1.0ms
th
@inf
(/.f64 (sin.f64 th) (sin.f64 ky))
1.0ms
th
@0
(/.f64 (sin.f64 th) (sin.f64 ky))

rewrite134.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
788×pow1_binary64
726×add-log-exp_binary64
726×log1p-expm1-u_binary64
726×expm1-log1p-u_binary64
709×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0721
114421
2191121
Stop Event
node limit
Counts
2 → 53
Calls
Call 1
Inputs
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(/.f64 (sin.f64 th) (sin.f64 ky))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (neg.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 1) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (cbrt.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 ky))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (/.f64 (sin.f64 th) (sin.f64 ky))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 th) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 ky))) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 ky))) 2) (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (*.f64 (cbrt.f64 (sin.f64 th)) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 th) (sin.f64 ky))) (sqrt.f64 (/.f64 (sin.f64 th) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 th)) (*.f64 (sqrt.f64 (sin.f64 th)) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 th)) (/.f64 1 (neg.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 th)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) 1) (/.f64 (sqrt.f64 (sin.f64 th)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (/.f64 (sin.f64 th) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (sin.f64 ky))) (/.f64 (sin.f64 th) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (sqrt.f64 (sin.f64 ky))) (/.f64 (cbrt.f64 (sin.f64 th)) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 ky))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (sin.f64 ky))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (sin.f64 th)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 th) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 ky))))))))

simplify70.0ms (0.2%)

Algorithm
egg-herbie
Rules
531×cancel-sign-sub-inv_binary64
471×fma-neg_binary64
469×sub-neg_binary64
437×distribute-neg-in_binary64
352×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
060309
1176300
2526291
32063287
47039287
Stop Event
node limit
Counts
85 → 75
Calls
Call 1
Inputs
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
th
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 -1/5040 (pow.f64 th 7)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th)))
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(/.f64 th (sin.f64 ky))
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky))) (/.f64 th (sin.f64 ky)))
(+.f64 (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 ky))) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky))) (/.f64 th (sin.f64 ky))))
(+.f64 (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 ky))) (+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 th 7) (sin.f64 ky))) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky))) (/.f64 th (sin.f64 ky)))))
(/.f64 (sin.f64 th) ky)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (+.f64 (/.f64 (sin.f64 th) ky) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 ky 3)))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (+.f64 (/.f64 (sin.f64 th) ky) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 ky 3))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th)))) (+.f64 (*.f64 -1/5040 (sin.f64 th)) (*.f64 1/720 (sin.f64 th)))) (pow.f64 ky 5))))))
Outputs
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
th
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(fma.f64 -1/6 (pow.f64 th 3) th)
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th))
(fma.f64 -1/6 (pow.f64 th 3) (fma.f64 1/120 (pow.f64 th 5) th))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 -1/5040 (pow.f64 th 7)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th)))
(fma.f64 -1/6 (pow.f64 th 3) (fma.f64 -1/5040 (pow.f64 th 7) (fma.f64 1/120 (pow.f64 th 5) th)))
(fma.f64 -1/6 (pow.f64 th 3) (fma.f64 1/120 (pow.f64 th 5) (fma.f64 -1/5040 (pow.f64 th 7) th)))
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(/.f64 th (sin.f64 ky))
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky))) (/.f64 th (sin.f64 ky)))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky)) (/.f64 th (sin.f64 ky)))
(+.f64 (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 ky))) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky))) (/.f64 th (sin.f64 ky))))
(fma.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 ky)) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky)) (/.f64 th (sin.f64 ky))))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky)) (fma.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 ky)) (/.f64 th (sin.f64 ky))))
(+.f64 (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 ky))) (+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 th 7) (sin.f64 ky))) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky))) (/.f64 th (sin.f64 ky)))))
(fma.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 ky)) (fma.f64 -1/5040 (/.f64 (pow.f64 th 7) (sin.f64 ky)) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky)) (/.f64 th (sin.f64 ky)))))
(fma.f64 -1/5040 (/.f64 (pow.f64 th 7) (sin.f64 ky)) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky)) (fma.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 ky)) (/.f64 th (sin.f64 ky)))))
(fma.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 ky)) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky)) (fma.f64 -1/5040 (/.f64 (pow.f64 th 7) (sin.f64 ky)) (/.f64 th (sin.f64 ky)))))
(/.f64 (sin.f64 th) ky)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 (sin.f64 th) ky) (/.f64 (sin.f64 th) ky))
(fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (+.f64 (/.f64 (sin.f64 th) ky) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 ky 3)))))
(+.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) ky) (/.f64 (sin.f64 th) ky)) (neg.f64 (*.f64 (*.f64 (sin.f64 th) -7/360) (pow.f64 ky 3))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) ky) (/.f64 (sin.f64 th) ky)) (*.f64 (sin.f64 th) (*.f64 -7/360 (pow.f64 ky 3))))
(fma.f64 (pow.f64 ky 3) (*.f64 (sin.f64 th) 7/360) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky)))
(+.f64 (/.f64 (sin.f64 th) ky) (*.f64 (sin.f64 th) (-.f64 (*.f64 ky 1/6) (*.f64 (pow.f64 ky 3) -7/360))))
(+.f64 (/.f64 (sin.f64 th) ky) (*.f64 (sin.f64 th) (+.f64 (*.f64 ky 1/6) (*.f64 (pow.f64 ky 3) 7/360))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (+.f64 (/.f64 (sin.f64 th) ky) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 ky 3))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th)))) (+.f64 (*.f64 -1/5040 (sin.f64 th)) (*.f64 1/720 (sin.f64 th)))) (pow.f64 ky 5))))))
(+.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) ky) (/.f64 (sin.f64 th) ky)) (fma.f64 -1 (*.f64 (*.f64 (sin.f64 th) -7/360) (pow.f64 ky 3)) (neg.f64 (*.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) -7/360) (*.f64 (sin.f64 th) 1/840)) (pow.f64 ky 5)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) ky) (fma.f64 -1 (fma.f64 (*.f64 (sin.f64 th) -7/360) (pow.f64 ky 3) (*.f64 (fma.f64 (sin.f64 th) 1/840 (*.f64 (sin.f64 th) -7/2160)) (pow.f64 ky 5))) (/.f64 (sin.f64 th) ky)))
(-.f64 (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky)) (fma.f64 (sin.f64 th) (*.f64 (pow.f64 ky 3) -7/360) (*.f64 (*.f64 (sin.f64 th) -31/15120) (pow.f64 ky 5))))
(+.f64 (/.f64 (sin.f64 th) ky) (fma.f64 (pow.f64 ky 5) (*.f64 (sin.f64 th) 31/15120) (*.f64 (sin.f64 th) (-.f64 (*.f64 ky 1/6) (*.f64 (pow.f64 ky 3) -7/360)))))
(+.f64 (/.f64 (sin.f64 th) ky) (fma.f64 (pow.f64 ky 5) (*.f64 (sin.f64 th) 31/15120) (*.f64 (sin.f64 th) (+.f64 (*.f64 ky 1/6) (*.f64 (pow.f64 ky 3) 7/360)))))

localize38.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
0.2b
(/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.3b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
0.3b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
Compiler

Compiled 48 to 17 computations (64.6% saved)

series14.0ms (0%)

Counts
3 → 96
Calls

24 calls:

TimeVariablePointExpression
2.0ms
kx
@inf
(/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
1.0ms
kx
@0
(/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
1.0ms
ky
@0
(/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
1.0ms
ky
@0
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
1.0ms
ky
@inf
(/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))

rewrite76.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
575×log-prod_binary64
449×exp-prod_binary64
350×pow-prod-down_binary64
302×pow2_binary64
214×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01242
123742
2284642
Stop Event
node limit
Counts
3 → 105
Calls
Call 1
Inputs
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 th) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 th) 1) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 th) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 th) -1) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (cbrt.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (sqrt.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -2)) (/.f64 1 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1/2) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2) (/.f64 1 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 -1) (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (cbrt.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (sqrt.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 -1/2 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1) 1))))))

simplify99.0ms (0.3%)

Algorithm
egg-herbie
Rules
712×times-frac_binary64
601×associate-/l*_binary64
517×associate-/r*_binary64
493×associate-*l/_binary64
433×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02474157
17694121
229003930
Stop Event
node limit
Counts
201 → 170
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(/.f64 (sin.f64 th) (sin.f64 kx))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 5))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 6))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(/.f64 (sin.f64 th) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 kx 6))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th)
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(/.f64 1 (sin.f64 kx))
(+.f64 (/.f64 1 (sin.f64 kx)) (*.f64 -1/2 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 3))))
(+.f64 (/.f64 1 (sin.f64 kx)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 3))) (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))))
(+.f64 (/.f64 1 (sin.f64 kx)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4)) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 5))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 6))))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(/.f64 1 (sin.f64 ky))
(+.f64 (/.f64 1 (sin.f64 ky)) (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 3))))
(+.f64 (/.f64 1 (sin.f64 ky)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 3))) (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4))))
(+.f64 (/.f64 1 (sin.f64 ky)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 5))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 3))))) (pow.f64 kx 6))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 3))) (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4)))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
Outputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (-.f64 (/.f64 (*.f64 -1/6 (sin.f64 th)) (sin.f64 kx)) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))
(fma.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 (*.f64 -1/6 (sin.f64 th)) (sin.f64 kx)) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (-.f64 (/.f64 (*.f64 -1/6 (sin.f64 th)) (sin.f64 kx)) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (/.f64 1/120 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(fma.f64 (+.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120 (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) -1/2)) (*.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))) (pow.f64 ky 5) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 (*.f64 -1/6 (sin.f64 th)) (sin.f64 kx)) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 (*.f64 -1/6 (sin.f64 th)) (sin.f64 kx)) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 (*.f64 -1/6 (sin.f64 th)) (sin.f64 kx)) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))))))) (pow.f64 ky 7) (*.f64 (-.f64 (/.f64 (*.f64 -1/6 (sin.f64 th)) (sin.f64 kx)) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(+.f64 (fma.f64 (-.f64 (/.f64 (*.f64 (sin.f64 th) -1/5040) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/120 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (/.f64 (+.f64 -1/6 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (*.f64 -1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))))) (pow.f64 ky 7) (*.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 3))) (fma.f64 (-.f64 (/.f64 1/120 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 5) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(+.f64 (fma.f64 (-.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040 (*.f64 -1/2 (/.f64 (+.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120 (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) -1/2)) (*.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))) (pow.f64 (sin.f64 kx) 2)))) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 2/45 (/.f64 (+.f64 1/6 (*.f64 1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 7) (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3))) (fma.f64 (+.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120 (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) -1/2)) (*.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))) (pow.f64 ky 5) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 kx 4)) (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 (/.f64 -1/4 (pow.f64 (sin.f64 ky) 4)) (sin.f64 th))) (pow.f64 kx 4)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 kx 4)) (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (neg.f64 (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2)) (*.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))) (pow.f64 kx 6)))))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2))))) (/.f64 (*.f64 (sin.f64 th) 1/4) (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 kx 6))) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4)))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 (/.f64 -1/4 (pow.f64 (sin.f64 ky) 4)) (sin.f64 th))) (pow.f64 kx 4))) (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 (/.f64 -1/4 (pow.f64 (sin.f64 ky) 4)) (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 2/45 (/.f64 (+.f64 1/6 (*.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/2)) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (/.f64 (*.f64 (sin.f64 th) 1/4) (pow.f64 (sin.f64 ky) 4)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))))) (pow.f64 kx 6)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 th (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky))))
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky)) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) -1/6)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3)))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky)))))
(fma.f64 1/120 (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5))) (fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky)) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) -1/6))))
(fma.f64 1/120 (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5))) (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky))))))
(fma.f64 1/120 (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3))) (fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 th (sin.f64 ky)) (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))))))
(+.f64 (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/5040 (pow.f64 th 7))))) (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) (*.f64 1/120 (pow.f64 th 5))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(/.f64 (sin.f64 th) (sin.f64 kx))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (sin.f64 th) (sin.f64 kx)))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 ky ky)) (/.f64 (sin.f64 th) (sin.f64 kx)))
(fma.f64 -1/2 (*.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 4)) (/.f64 (sin.f64 th) (sin.f64 kx))))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 ky ky)) (-.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)))) (pow.f64 ky 4))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 (/.f64 -1/4 (pow.f64 (sin.f64 kx) 5)) (sin.f64 th))) (pow.f64 ky 4)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 2)) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 5))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 6))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1 (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 5) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th)))))) (pow.f64 ky 6)) (fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 ky 4)) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 ky ky)) (fma.f64 (neg.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (/.f64 (+.f64 -1/6 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (*.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 ky 6) (-.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)))) (pow.f64 ky 4)))))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 (/.f64 -1/4 (pow.f64 (sin.f64 kx) 5)) (sin.f64 th))) (pow.f64 ky 4))) (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 (/.f64 -1/4 (pow.f64 (sin.f64 kx) 5)) (sin.f64 th))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 5)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (/.f64 (+.f64 1/45 (*.f64 (/.f64 (+.f64 1/6 (*.f64 1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2)) 1/2)) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))))) (pow.f64 ky 6)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(/.f64 (sin.f64 th) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (/.f64 (sin.f64 th) (sin.f64 ky)))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (*.f64 kx kx))) (/.f64 (sin.f64 th) (sin.f64 ky)))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 3)) (/.f64 (sin.f64 th) (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) kx)) kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4)))))
(+.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (*.f64 kx kx))) (/.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))))))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 3)) (/.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) kx)) kx) (/.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (/.f64 (*.f64 (sin.f64 th) -1/4) (pow.f64 (sin.f64 ky) 5)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 3))) (+.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 3))) (+.f64 (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 kx 6))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4))))))
(+.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (*.f64 kx kx))) (/.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 -1 (+.f64 (*.f64 (pow.f64 kx 6) (fma.f64 1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))))) (fma.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 5) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))) (*.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))))))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 3)) (fma.f64 -1 (fma.f64 (pow.f64 kx 6) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2))))) (fma.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)))))))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)))))) (/.f64 (sin.f64 th) (sin.f64 ky))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 3) kx)) kx) (/.f64 (sin.f64 th) (sin.f64 ky))) (fma.f64 (pow.f64 kx 6) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 2/45 (/.f64 (+.f64 1/6 (*.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/2)) (pow.f64 (sin.f64 ky) 2)))) (fma.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 5)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (/.f64 (+.f64 (/.f64 1/8 (/.f64 (pow.f64 (sin.f64 ky) 5) (sin.f64 th))) (/.f64 1/4 (/.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (sin.f64 th)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))))) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 3)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (/.f64 (*.f64 (sin.f64 th) -1/4) (pow.f64 (sin.f64 ky) 5))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th)
(*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 th (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3)) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(fma.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th)))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5)) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3)) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5)) (fma.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5)) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/6 (pow.f64 th 3)))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 5))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5)) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3)) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 7)) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 5)) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3)) (fma.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 7))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 th (*.f64 -1/5040 (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) (*.f64 1/120 (pow.f64 th 5)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 th) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))
(/.f64 1 (sin.f64 kx))
(+.f64 (/.f64 1 (sin.f64 kx)) (*.f64 -1/2 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 3))))
(+.f64 (/.f64 1 (sin.f64 kx)) (*.f64 -1/2 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 3))))
(fma.f64 -1/2 (/.f64 ky (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) (/.f64 1 (sin.f64 kx)))
(fma.f64 -1/2 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 3)) (/.f64 1 (sin.f64 kx)))
(+.f64 (/.f64 1 (sin.f64 kx)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 3))) (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4))))
(+.f64 (/.f64 1 (sin.f64 kx)) (fma.f64 -1/2 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 3)) (*.f64 (pow.f64 ky 4) (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))))))
(+.f64 (/.f64 1 (sin.f64 kx)) (fma.f64 -1/2 (/.f64 ky (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) (*.f64 (pow.f64 ky 4) (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))))))
(+.f64 (/.f64 1 (sin.f64 kx)) (fma.f64 (pow.f64 ky 4) (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (*.f64 -1/2 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 3)))))
(+.f64 (/.f64 1 (sin.f64 kx)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4)) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 5))) (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 kx) 5))) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 6))))))
(+.f64 (/.f64 1 (sin.f64 kx)) (fma.f64 -1/2 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 3)) (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 4) (neg.f64 (*.f64 (pow.f64 ky 6) (fma.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3)) (fma.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 5)) (*.f64 1/2 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))))))))))
(+.f64 (/.f64 1 (sin.f64 kx)) (-.f64 (fma.f64 -1/2 (/.f64 ky (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) (*.f64 (pow.f64 ky 4) (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))))) (*.f64 (pow.f64 ky 6) (fma.f64 1/2 (/.f64 (-.f64 2/45 (/.f64 (+.f64 -1/6 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (pow.f64 (sin.f64 kx) 3)) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 5))))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 3)) (/.f64 1 (sin.f64 kx))) (-.f64 (*.f64 (pow.f64 ky 4) (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))))) (*.f64 (pow.f64 ky 6) (fma.f64 1/2 (/.f64 (+.f64 2/45 (/.f64 (+.f64 1/6 (*.f64 1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (pow.f64 (sin.f64 kx) 3)) (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 1/4 (pow.f64 (sin.f64 kx) 5)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(/.f64 1 (sin.f64 ky))
(+.f64 (/.f64 1 (sin.f64 ky)) (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 3))))
(+.f64 (/.f64 1 (sin.f64 ky)) (/.f64 (*.f64 -1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 3)))
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 3) kx)) (/.f64 1 (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 3)) kx) (/.f64 1 (sin.f64 ky)))
(+.f64 (/.f64 1 (sin.f64 ky)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 3))) (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4))))
(+.f64 (/.f64 1 (sin.f64 ky)) (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 3)) (*.f64 (pow.f64 kx 4) (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 3)))))))
(+.f64 (/.f64 1 (sin.f64 ky)) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 3) kx)) (*.f64 (pow.f64 kx 4) (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 3)))))))
(+.f64 (/.f64 1 (sin.f64 ky)) (fma.f64 (pow.f64 kx 4) (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (/.f64 (+.f64 1/6 (*.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/2)) (pow.f64 (sin.f64 ky) 3))) (/.f64 (*.f64 -1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 3))))
(+.f64 (/.f64 1 (sin.f64 ky)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 5))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 3))))) (pow.f64 kx 6))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 3))) (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 5))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 kx 4)))))
(+.f64 (/.f64 1 (sin.f64 ky)) (fma.f64 -1 (*.f64 (pow.f64 kx 6) (fma.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 5)) (*.f64 1/2 (+.f64 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 (sin.f64 ky) 2)) (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 3)))))) (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 3)) (*.f64 (pow.f64 kx 4) (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 3))))))))
(+.f64 (/.f64 1 (sin.f64 ky)) (-.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 3) kx)) (*.f64 (pow.f64 kx 4) (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 3)))))) (*.f64 (pow.f64 kx 6) (fma.f64 1/2 (+.f64 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 3)))) (pow.f64 (sin.f64 ky) 2)) (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 3))) (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 5)))))))
(+.f64 (/.f64 1 (sin.f64 ky)) (-.f64 (fma.f64 (pow.f64 kx 4) (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (/.f64 (+.f64 1/6 (*.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/2)) (pow.f64 (sin.f64 ky) 3))) (/.f64 (*.f64 -1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 3))) (*.f64 (pow.f64 kx 6) (fma.f64 1/2 (+.f64 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (/.f64 (+.f64 1/6 (*.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/2)) (pow.f64 (sin.f64 ky) 3))) (pow.f64 (sin.f64 ky) 2)) (/.f64 (+.f64 2/45 (/.f64 (+.f64 1/6 (*.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/2)) (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 3))) (*.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 5)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))))))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))

localize64.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2))))
0.3b
(pow.f64 (sin.f64 ky) 2)
1.7b
(-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx))))
6.3b
(sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))
Compiler

Compiled 101 to 51 computations (49.5% saved)

series40.0ms (0.1%)

Counts
3 → 60
Calls

15 calls:

TimeVariablePointExpression
23.0ms
ky
@-inf
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2))))
4.0ms
ky
@0
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2))))
2.0ms
ky
@0
(sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))
1.0ms
kx
@-inf
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2))))
1.0ms
ky
@inf
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2))))

rewrite77.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
710×log-prod_binary64
490×fma-def_binary64
272×expm1-udef_binary64
272×log1p-udef_binary64
271×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01461
132637
2457027
Stop Event
node limit
Counts
3 → 118
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (log.f64 (sqrt.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 2)) (sqrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 2) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 (pow.f64 (sin.f64 kx) 2) 2) (pow.f64 (sin.f64 ky) 4))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (hypot.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (pow.f64 (sin.f64 kx) 2) 3/2)) (hypot.f64 (pow.f64 (sin.f64 kx) 2) (sqrt.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (-.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sin.f64 ky) (sqrt.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (pow.f64 (sin.f64 kx) 2)) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1/2 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1/2 (*.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (sin.f64 kx) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2))) (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 kx) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (sin.f64 kx) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 kx) 2)) (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 kx) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 kx) 2) 2)) (cbrt.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (sin.f64 kx) 2)) (sqrt.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 kx) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1/8 (*.f64 (pow.f64 (cos.f64 (+.f64 kx kx)) 3) 1/8)) (/.f64 1 (fma.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))) (pow.f64 (cos.f64 kx) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 1/4 (*.f64 (pow.f64 (cos.f64 (+.f64 kx kx)) 2) 1/4)) (/.f64 1 (pow.f64 (cos.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))) (pow.f64 (cos.f64 kx) 2) 1/4) (-.f64 1/8 (*.f64 (pow.f64 (cos.f64 (+.f64 kx kx)) 3) 1/8))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (cos.f64 kx) 2) (-.f64 1/4 (*.f64 (pow.f64 (cos.f64 (+.f64 kx kx)) 2) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1/8 (*.f64 (pow.f64 (cos.f64 (+.f64 kx kx)) 3) 1/8)) (fma.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))) (pow.f64 (cos.f64 kx) 2) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1/4 (*.f64 (pow.f64 (cos.f64 (+.f64 kx kx)) 2) 1/4)) (pow.f64 (cos.f64 kx) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (cos.f64 (+.f64 kx kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1/8 (*.f64 (pow.f64 (cos.f64 (+.f64 kx kx)) 3) 1/8))) (neg.f64 (fma.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))) (pow.f64 (cos.f64 kx) 2) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1/4 (*.f64 (pow.f64 (cos.f64 (+.f64 kx kx)) 2) 1/4))) (neg.f64 (pow.f64 (cos.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 1/8 (pow.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2) 3)) (+.f64 1/4 (-.f64 (*.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2) (*.f64 (cos.f64 (+.f64 kx kx)) -1/2)) (*.f64 1/2 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1/4 (*.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2) (*.f64 (cos.f64 (+.f64 kx kx)) -1/2))) (-.f64 1/2 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 kx) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (sin.f64 kx) 2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (pow.f64 (sin.f64 kx) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 kx) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (sin.f64 kx) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (sin.f64 kx) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 kx) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (sin.f64 kx) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (sin.f64 kx))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/2 (neg.f64 (cos.f64 (+.f64 kx kx))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 kx kx)) -1/2 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) 2) (neg.f64 (cbrt.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (neg.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (cos.f64 (+.f64 kx kx)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2)) (cbrt.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2))) (cbrt.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2)) (sqrt.f64 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 1/2 (cos.f64 (+.f64 kx kx))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cos.f64 (+.f64 kx kx))) 1/2 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) 2)) (cbrt.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx))))) (sqrt.f64 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 kx kx))) 2)) (cbrt.f64 (cos.f64 (+.f64 kx kx))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (sqrt.f64 (cos.f64 (+.f64 kx kx)))) (sqrt.f64 (cos.f64 (+.f64 kx kx))) 1/2)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (cbrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (/.f64 (sin.f64 ky) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (cbrt.f64 (sin.f64 ky)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1))))))

simplify96.0ms (0.3%)

Algorithm
egg-herbie
Rules
739×fma-def_binary64
638×associate-*r*_binary64
616×associate-*l*_binary64
393×distribute-lft-in_binary64
393×distribute-rgt-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01812489
15072477
215582150
377592150
Stop Event
node limit
Counts
178 → 165
Calls
Call 1
Inputs
(sin.f64 ky)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (pow.f64 ky 2))) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (pow.f64 ky 2))) (+.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))) (*.f64 -1/2 (*.f64 (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) 2)) (pow.f64 ky 4)) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (pow.f64 ky 2))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) 2)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (pow.f64 ky 6)) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))) (+.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))) (*.f64 -1/2 (*.f64 (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) 2)) (pow.f64 ky 4)) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(pow.f64 kx 2)
(+.f64 (pow.f64 kx 2) (*.f64 -1/3 (pow.f64 kx 4)))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (*.f64 2/45 (pow.f64 kx 6))))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (+.f64 (*.f64 2/45 (pow.f64 kx 6)) (*.f64 -1/315 (pow.f64 kx 8)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky)
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (*.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) (*.f64 -1/6 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))) (pow.f64 ky 3)))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (*.f64 1/12 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))))) (pow.f64 ky 5)) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (*.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) (*.f64 -1/6 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))) (pow.f64 ky 3))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/12 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (+.f64 (*.f64 -1/5040 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (+.f64 (*.f64 -1/240 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (+.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 4)) (*.f64 2/45 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2)))))) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))))) (pow.f64 ky 7)) (+.f64 (*.f64 (+.f64 (*.f64 1/120 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (*.f64 1/12 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))))) (pow.f64 ky 5)) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (*.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) (*.f64 -1/6 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
1
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4))))))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4)))) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
Outputs
(sin.f64 ky)
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))
(fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky)))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.f64 (sin.f64 ky) (pow.f64 kx 4))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky)))
(fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (fma.f64 -1/2 (*.f64 (pow.f64 kx 4) (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (sin.f64 ky))) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (sin.f64 ky))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (sin.f64 ky))) (sin.f64 ky))))
(fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.f64 (sin.f64 ky) (pow.f64 kx 4))) (fma.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (/.f64 (sin.f64 ky) (pow.f64 kx 6))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (sin.f64 ky)) (pow.f64 kx 4)) (fma.f64 1/2 (/.f64 (+.f64 2/45 (/.f64 (*.f64 1/2 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2))) (/.f64 (sin.f64 ky) (pow.f64 kx 6))) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))))
(fma.f64 1/2 (fma.f64 (/.f64 (-.f64 2/45 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) -1/6) (pow.f64 (sin.f64 ky) 2))) (sin.f64 ky)) (pow.f64 kx 6) (/.f64 (*.f64 kx kx) (sin.f64 ky))) (fma.f64 -1/2 (*.f64 (pow.f64 kx 4) (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (sin.f64 ky))) (sin.f64 ky)))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))
(sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (pow.f64 ky 2))) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky ky)) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))) (*.f64 ky ky)) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (pow.f64 ky 2))) (+.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))) (*.f64 -1/2 (*.f64 (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) 2)) (pow.f64 ky 4)) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))))))
(+.f64 (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky ky)) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) 2)) (pow.f64 ky 4)))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky ky)) (fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) 2)) (pow.f64 ky 4))) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))
(+.f64 (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))) (+.f64 (*.f64 (pow.f64 ky 4) (+.f64 -1/6 (*.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)) -1/8))) (*.f64 1/2 (*.f64 ky ky)))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (pow.f64 ky 2))) (+.f64 (*.f64 1/2 (*.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) 2)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (pow.f64 ky 6)) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))) (+.f64 (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))) (*.f64 -1/2 (*.f64 (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) 2)) (pow.f64 ky 4)) (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky ky)) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) 2)) (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) (pow.f64 ky 6))) (+.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) 2)) (pow.f64 ky 4)))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 ky ky)) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (-.f64 2/45 (/.f64 (+.f64 -1/6 (*.f64 -1/2 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) 2))) (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (pow.f64 ky 6))) (fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (+.f64 1/3 (pow.f64 (*.f64 1/2 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))) 2)) (pow.f64 ky 4))) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))) (+.f64 (*.f64 ky ky) (*.f64 (fma.f64 1/2 (/.f64 (fma.f64 1/4 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)) 1/3) (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)) 2/45) (pow.f64 ky 6)))) (fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))) (*.f64 (pow.f64 ky 4) (+.f64 -1/6 (*.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)) -1/8))) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(sqrt.f64 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))
(sqrt.f64 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))
(sqrt.f64 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))
(pow.f64 kx 2)
(*.f64 kx kx)
(+.f64 (pow.f64 kx 2) (*.f64 -1/3 (pow.f64 kx 4)))
(+.f64 (*.f64 kx kx) (*.f64 (pow.f64 kx 4) -1/3))
(fma.f64 (pow.f64 kx 4) -1/3 (*.f64 kx kx))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (*.f64 2/45 (pow.f64 kx 6))))
(+.f64 (*.f64 kx kx) (fma.f64 -1/3 (pow.f64 kx 4) (*.f64 2/45 (pow.f64 kx 6))))
(fma.f64 kx kx (fma.f64 (pow.f64 kx 4) -1/3 (*.f64 2/45 (pow.f64 kx 6))))
(fma.f64 (pow.f64 kx 4) -1/3 (fma.f64 2/45 (pow.f64 kx 6) (*.f64 kx kx)))
(+.f64 (pow.f64 kx 2) (+.f64 (*.f64 -1/3 (pow.f64 kx 4)) (+.f64 (*.f64 2/45 (pow.f64 kx 6)) (*.f64 -1/315 (pow.f64 kx 8)))))
(+.f64 (*.f64 kx kx) (fma.f64 -1/3 (pow.f64 kx 4) (fma.f64 2/45 (pow.f64 kx 6) (*.f64 -1/315 (pow.f64 kx 8)))))
(fma.f64 kx kx (fma.f64 (pow.f64 kx 4) -1/3 (fma.f64 2/45 (pow.f64 kx 6) (*.f64 -1/315 (pow.f64 kx 8)))))
(fma.f64 kx kx (fma.f64 (pow.f64 kx 4) -1/3 (fma.f64 -1/315 (pow.f64 kx 8) (*.f64 2/45 (pow.f64 kx 6)))))
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)
(-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)
(-.f64 1/2 (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx)))))
(+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))
(fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky)
(*.f64 ky (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))))
(*.f64 ky (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (*.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) (*.f64 -1/6 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))) (pow.f64 ky 3)))
(fma.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) ky (*.f64 (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) -1/6)) (pow.f64 ky 3)))
(fma.f64 ky (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) -1/6)) (pow.f64 ky 3)))
(fma.f64 ky (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))) (*.f64 (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 3))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))) -1/6)) (pow.f64 ky 3)))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (*.f64 1/12 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))))) (pow.f64 ky 5)) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (*.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) (*.f64 -1/6 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))) (pow.f64 ky 3))))
(fma.f64 (fma.f64 1/120 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (fma.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) 1/12))) (pow.f64 ky 5) (fma.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) ky (*.f64 (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) -1/6)) (pow.f64 ky 3))))
(fma.f64 (fma.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) 1/120 (fma.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) 1/12))) (pow.f64 ky 5) (fma.f64 ky (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) -1/6)) (pow.f64 ky 3))))
(fma.f64 (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 3))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))) -1/6)) (pow.f64 ky 3) (fma.f64 (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 3))) 1/12 (fma.f64 (+.f64 (/.f64 1 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 3)) (+.f64 (/.f64 1/3 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 2)) (*.f64 (/.f64 1 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 3)) -1/4))) (*.f64 1/2 (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))) 1/120))) (pow.f64 ky 5) (*.f64 ky (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/12 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (+.f64 (*.f64 -1/5040 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (+.f64 (*.f64 -1/240 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (+.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 4)) (*.f64 2/45 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2)))))) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))))) (pow.f64 ky 7)) (+.f64 (*.f64 (+.f64 (*.f64 1/120 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 2))) (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) 2)) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx))))))) (*.f64 1/12 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))))) (pow.f64 ky 5)) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (*.f64 (+.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))) 3)))) (*.f64 -1/6 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))))) (pow.f64 ky 3)))))
(fma.f64 (fma.f64 -1/12 (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2))) (fma.f64 -1/5040 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (fma.f64 -1/240 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) (*.f64 -1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (fma.f64 -1/2 (/.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2)) (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (+.f64 (/.f64 2/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 4)) (/.f64 2/45 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2)))))))))) (pow.f64 ky 7) (fma.f64 (fma.f64 1/120 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (fma.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) 1/12))) (pow.f64 ky 5) (fma.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) ky (*.f64 (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) -1/6)) (pow.f64 ky 3)))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2))) -1/12 (fma.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) -1/5040 (fma.f64 -1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (fma.f64 -1/2 (/.f64 (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2)) (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (+.f64 (/.f64 2/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 4)) (/.f64 2/45 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2)))))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) -1/240)))) (pow.f64 ky 7) (fma.f64 (fma.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) 1/120 (fma.f64 1/2 (*.f64 (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))) (-.f64 (+.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)) (/.f64 1/3 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 2))) (pow.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3)))) 2))) (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) 1/12))) (pow.f64 ky 5) (fma.f64 ky (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) (*.f64 (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))) 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx -2)))))) -1/6)) (pow.f64 ky 3)))))
(fma.f64 (+.f64 (fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))) -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 3))) -1/240)) (*.f64 (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)) (+.f64 (fma.f64 -1/2 (+.f64 (/.f64 2/3 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 3)) (+.f64 (/.f64 1 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 4)) (/.f64 2/45 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 2)))) (*.f64 (/.f64 (+.f64 (/.f64 1 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 3)) (+.f64 (/.f64 1/3 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 2)) (*.f64 (/.f64 1 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 3)) -1/4))) (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)) 1/4)) (*.f64 (+.f64 (/.f64 1 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 3)) (+.f64 (/.f64 1/3 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 2)) (*.f64 (/.f64 1 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 3)) -1/4))) -1/12)))) (pow.f64 ky 7) (fma.f64 (fma.f64 -1/2 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 3))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))) -1/6)) (pow.f64 ky 3) (fma.f64 (fma.f64 (sqrt.f64 (/.f64 1 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 3))) 1/12 (fma.f64 (+.f64 (/.f64 1 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 3)) (+.f64 (/.f64 1/3 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 2)) (*.f64 (/.f64 1 (pow.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2) 3)) -1/4))) (*.f64 1/2 (sqrt.f64 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2))) 1/120))) (pow.f64 ky 5) (*.f64 ky (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) 1/2)))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))
1
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1)
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1)
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1) (*.f64 1/2 (*.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2)))))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2))) 1))
(fma.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (*.f64 1/2 (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2))) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4)))) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1) (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2))) (*.f64 -1/2 (*.f64 (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (pow.f64 (sin.f64 ky) 2)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1) (fma.f64 -1/2 (*.f64 (+.f64 (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (pow.f64 (sin.f64 ky) 2)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))) (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)))) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6))) (*.f64 1/2 (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2))))))
(+.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1) (*.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 kx 4) (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))))) (*.f64 (pow.f64 kx 6) (fma.f64 -1/2 (+.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 8)) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))) (pow.f64 (sin.f64 ky) 2)) (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)))) (/.f64 -1/45 (pow.f64 (sin.f64 ky) 4)))))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))
(*.f64 (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (+.f64 1/2 (pow.f64 (sin.f64 ky) 2)) (*.f64 1/2 (cos.f64 (neg.f64 (*.f64 -2 kx))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (-.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 1/2 (+.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 -1/2 (cos.f64 (*.f64 kx -2))))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 -1/2 (cos.f64 (*.f64 kx -2)) (+.f64 1/2 (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 2) (fma.f64 1/2 (cos.f64 (*.f64 kx -2)) -1/2)))))

eval417.0ms (1.3%)

Compiler

Compiled 17607 to 8984 computations (49% saved)

prune165.0ms (0.5%)

Pruning

43 alts after pruning (38 fresh and 5 done)

PrunedKeptTotal
New62233655
Fresh12517
Picked101
Done055
Total63543678
Error
0b
Counts
678 → 43
Alt Table
Click to see full alt table
StatusErrorProgram
58.0b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
0.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
44.3b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
52.9b
(*.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1) (sin.f64 th))
15.5b
(*.f64 (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sin.f64 th))
49.7b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
48.1b
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
52.1b
(*.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 th) (sin.f64 ky))) 1))
0.2b
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
56.2b
(exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))))
0.4b
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))
56.3b
(*.f64 (sin.f64 ky) (exp.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 ky)))))
46.2b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
56.8b
(*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky))) (/.f64 th (sin.f64 ky))))
32.3b
(*.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))
46.2b
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th))))
56.3b
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 ky)))
0.3b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
48.1b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
49.7b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
39.5b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (*.f64 ky ky)))) (sin.f64 th))
0.3b
(*.f64 (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)) (sin.f64 th))
33.6b
(*.f64 (sin.f64 ky) (exp.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
2.8b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
49.7b
(sin.f64 th)
49.8b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)))
49.3b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
33.5b
(*.f64 (*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sin.f64 th))
16.0b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky))))))) (sin.f64 th))
0.2b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
47.1b
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (sin.f64 th))
0.2b
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -1) (sin.f64 th))
48.1b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
0.4b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
49.5b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
56.7b
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
49.8b
(*.f64 (sin.f64 ky) (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 th)) -1))
58.3b
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky)))
56.1b
th
30.8b
(pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2)
49.4b
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
58.3b
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)))
51.2b
(-.f64 (+.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))) 1)
Compiler

Compiled 1156 to 811 computations (29.8% saved)

localize17.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
0.1b
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
0.2b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
Compiler

Compiled 36 to 9 computations (75% saved)

series10.0ms (0%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
1.0ms
ky
@0
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
1.0ms
ky
@inf
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
1.0ms
ky
@-inf
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
1.0ms
kx
@inf
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
1.0ms
kx
@-inf
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))

rewrite74.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
570×log-prod_binary64
452×exp-prod_binary64
289×pow-prod-down_binary64
287×pow2_binary64
201×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01031
120931
2283531
Stop Event
node limit
Counts
2 → 104
Calls
Call 1
Inputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (*.f64 (cbrt.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 th)) (*.f64 (sqrt.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 th)) (/.f64 1 (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) 1) (/.f64 (sqrt.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sqrt.f64 (sin.f64 th)) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (cbrt.f64 (sin.f64 th)) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) -2) (/.f64 (sin.f64 th) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) 2)) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) 2)) (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -1/2) (/.f64 (sin.f64 th) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))) (/.f64 (cbrt.f64 (sin.f64 th)) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) 1) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (neg.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 ky))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 ky))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 th) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 ky)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) (*.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) 2) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 1 (neg.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 1) (/.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1) (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) -2) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 ky) -1/2) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) (sqrt.f64 (sin.f64 ky))) (/.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3) (pow.f64 (sin.f64 ky) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))) 2)) (cbrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))) (sqrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (neg.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) 1) 1))))))

simplify74.0ms (0.2%)

Algorithm
egg-herbie
Rules
742×fma-def_binary64
573×associate-*l*_binary64
572×associate-*r*_binary64
363×times-frac_binary64
333×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01762666
15392460
218562292
Stop Event
node limit
Counts
164 → 145
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(/.f64 (sin.f64 kx) ky)
(+.f64 (/.f64 (sin.f64 kx) ky) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky))
(+.f64 (/.f64 (sin.f64 kx) ky) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 1/120 (sin.f64 kx)))) (pow.f64 ky 3))))
(+.f64 (/.f64 (sin.f64 kx) ky) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky) (+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 1/120 (sin.f64 kx)))) (pow.f64 ky 3)) (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (sin.f64 kx)) (+.f64 (*.f64 1/120 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 -1/6 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 1/120 (sin.f64 kx)))))))) (pow.f64 ky 5)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
1
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (pow.f64 (sin.f64 ky) 2))))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
Outputs
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) -1/6)))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2))))) (+.f64 th (*.f64 (pow.f64 th 3) -1/6)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) -1/6))))
(fma.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2))))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2))))) (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 5) 1/120))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 7)) -1/5040)))))
(+.f64 (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2))))) (+.f64 th (*.f64 (pow.f64 th 7) -1/5040))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2))))) (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 5) 1/120))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))
(fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (/.f64 (*.f64 1/120 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (fma.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (*.f64 (-.f64 (fma.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2))))))) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6))) (pow.f64 ky 5))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(fma.f64 (-.f64 (/.f64 (*.f64 1/120 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 ky 5) (+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (/.f64 (*.f64 1/120 (sin.f64 th)) (sin.f64 kx)) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (*.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))))))) (pow.f64 ky 7) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(+.f64 (fma.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))) (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (*.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))) (*.f64 -1/2 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))))) (pow.f64 ky 7)))
(fma.f64 (-.f64 (fma.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2))))))) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6))) (pow.f64 ky 5) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 3) (fma.f64 (-.f64 (fma.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (-.f64 (fma.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2))))))) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6))) (pow.f64 (sin.f64 kx) 2)))) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (-.f64 2/45 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (/.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (pow.f64 ky 7) (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) (sin.f64 th)) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 kx 4)) (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4)))
(-.f64 (fma.f64 -1/2 (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) (sin.f64 th)) (sin.f64 th)) (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))) (pow.f64 kx 4)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(fma.f64 -1 (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 kx 4)) (+.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th)) (neg.f64 (*.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))) (pow.f64 kx 6)))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (fma.f64 (neg.f64 (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2))))) (*.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))) (pow.f64 kx 6) (sin.f64 th))) (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4)))
(fma.f64 -1/2 (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) (sin.f64 th)) (-.f64 (fma.f64 (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2)) 2/45)) (fma.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)))) (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) 1/8)) (pow.f64 (sin.f64 ky) 2)))) (neg.f64 (pow.f64 kx 6)) (sin.f64 th)) (*.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))) (pow.f64 kx 4))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 (sin.f64 kx) ky)
(+.f64 (/.f64 (sin.f64 kx) ky) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky))
(+.f64 (/.f64 (sin.f64 kx) ky) (*.f64 ky (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 1/6 (sin.f64 kx)))))
(fma.f64 ky (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)) (/.f64 (sin.f64 kx) ky))
(fma.f64 ky (fma.f64 (sin.f64 kx) 1/6 (/.f64 1/2 (sin.f64 kx))) (/.f64 (sin.f64 kx) ky))
(+.f64 (/.f64 (sin.f64 kx) ky) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky) (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 1/120 (sin.f64 kx)))) (pow.f64 ky 3))))
(+.f64 (/.f64 (sin.f64 kx) ky) (fma.f64 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 1/6 (sin.f64 kx))) ky (*.f64 (pow.f64 ky 3) (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (fma.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 1/6 (sin.f64 kx))) (*.f64 (sin.f64 kx) 1/120))))))
(+.f64 (/.f64 (sin.f64 kx) ky) (fma.f64 (pow.f64 ky 3) (-.f64 (/.f64 -1/2 (/.f64 (sin.f64 kx) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (fma.f64 (sin.f64 kx) 1/120 (*.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6))))) (*.f64 ky (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)))))
(fma.f64 ky (fma.f64 (sin.f64 kx) 1/6 (/.f64 1/2 (sin.f64 kx))) (fma.f64 (pow.f64 ky 3) (-.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (fma.f64 (sin.f64 kx) 1/120 (+.f64 (*.f64 (sin.f64 kx) -1/36) (/.f64 -1/12 (sin.f64 kx))))) (/.f64 (sin.f64 kx) ky)))
(+.f64 (/.f64 (sin.f64 kx) ky) (+.f64 (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky) (+.f64 (*.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 1/120 (sin.f64 kx)))) (pow.f64 ky 3)) (*.f64 (-.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (sin.f64 kx)) (+.f64 (*.f64 1/120 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 -1/6 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx)))) (*.f64 1/120 (sin.f64 kx)))))))) (pow.f64 ky 5)))))
(+.f64 (/.f64 (sin.f64 kx) ky) (fma.f64 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 1/6 (sin.f64 kx))) ky (fma.f64 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (fma.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 1/6 (sin.f64 kx))) (*.f64 (sin.f64 kx) 1/120))) (pow.f64 ky 3) (*.f64 (pow.f64 ky 5) (-.f64 (*.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 kx))) (fma.f64 -1/5040 (sin.f64 kx) (fma.f64 1/120 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 1/6 (sin.f64 kx))) (*.f64 -1/6 (-.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx))) (fma.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 1/6 (sin.f64 kx))) (*.f64 (sin.f64 kx) 1/120)))))))))))
(+.f64 (fma.f64 ky (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)) (/.f64 (sin.f64 kx) ky)) (fma.f64 (pow.f64 ky 5) (-.f64 (*.f64 1/2 (-.f64 (/.f64 2/45 (sin.f64 kx)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 3) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (fma.f64 (sin.f64 kx) -1/5040 (fma.f64 -1/6 (-.f64 (/.f64 -1/2 (/.f64 (sin.f64 kx) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (fma.f64 (sin.f64 kx) 1/120 (*.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6))))) (*.f64 1/120 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)))))) (*.f64 (pow.f64 ky 3) (-.f64 (/.f64 -1/2 (/.f64 (sin.f64 kx) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (fma.f64 (sin.f64 kx) 1/120 (*.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6))))))))
(+.f64 (fma.f64 ky (fma.f64 (sin.f64 kx) 1/6 (/.f64 1/2 (sin.f64 kx))) (/.f64 (sin.f64 kx) ky)) (fma.f64 (pow.f64 ky 5) (-.f64 (/.f64 (+.f64 1/45 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)) 1/4)) (sin.f64 kx)) (fma.f64 -1/6 (-.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (fma.f64 (sin.f64 kx) 1/120 (+.f64 (*.f64 (sin.f64 kx) -1/36) (/.f64 -1/12 (sin.f64 kx))))) (fma.f64 (sin.f64 kx) -1/5040 (+.f64 (*.f64 (sin.f64 kx) 1/720) (/.f64 1/240 (sin.f64 kx)))))) (*.f64 (pow.f64 ky 3) (-.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (fma.f64 (sin.f64 kx) 1/120 (+.f64 (*.f64 (sin.f64 kx) -1/36) (/.f64 -1/12 (sin.f64 kx))))))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
1
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (*.f64 1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))))
(fma.f64 1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1)
(fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2)))))
(fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4))) (+.f64 1 (*.f64 1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)) (pow.f64 kx 4)) (fma.f64 1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2)) (pow.f64 kx 4)) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (pow.f64 (sin.f64 ky) 2))) (+.f64 1 (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 6)) (pow.f64 (sin.f64 ky) 2))))))
(fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4))) (+.f64 1 (*.f64 1/2 (+.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)))))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)) (pow.f64 kx 4)) (fma.f64 1/2 (+.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)))) 1))
(fma.f64 1/2 (fma.f64 (/.f64 (fma.f64 1/2 (/.f64 (+.f64 1/3 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2))) (pow.f64 (sin.f64 ky) 2)) 2/45) (pow.f64 (sin.f64 ky) 2)) (pow.f64 kx 6) (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)) (+.f64 1 (*.f64 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2)) (pow.f64 kx 4))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 ky)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))

localize10.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
0.1b
(*.f64 -1/6 (pow.f64 th 3))
Compiler

Compiled 21 to 16 computations (23.8% saved)

series3.0ms (0%)

Counts
2 → 3
Calls

6 calls:

TimeVariablePointExpression
1.0ms
th
@0
(*.f64 -1/6 (pow.f64 th 3))
1.0ms
th
@inf
(*.f64 -1/6 (pow.f64 th 3))
1.0ms
th
@inf
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
1.0ms
th
@-inf
(*.f64 -1/6 (pow.f64 th 3))
0.0ms
th
@-inf
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)

rewrite54.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
744×pow1_binary64
702×add-log-exp_binary64
702×log1p-expm1-u_binary64
702×expm1-log1p-u_binary64
688×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0715
115915
2191315
Stop Event
node limit
Counts
2 → 46
Calls
Call 1
Inputs
(*.f64 -1/6 (pow.f64 th 3))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 -1/6 (pow.f64 th 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 -1/6) (pow.f64 th 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 th 6) 1/36))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -1/6) (pow.f64 th 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 -1/6 (pow.f64 th 3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 -1/6 (pow.f64 th 3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 -1/6 (pow.f64 th 3))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 -1/6 (pow.f64 th 3) th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 th 6) 1/36) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)) (/.f64 (*.f64 th th) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 -1/6 (pow.f64 th 3) th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) (pow.f64 (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) 2) (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) (sqrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 th 3) (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216)) (/.f64 1 (+.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th (-.f64 th (*.f64 -1/6 (pow.f64 th 3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (/.f64 1 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th (-.f64 th (*.f64 -1/6 (pow.f64 th 3))))) (+.f64 (pow.f64 th 3) (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th) (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 th 3) (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216)) (+.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th (-.f64 th (*.f64 -1/6 (pow.f64 th 3))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 th 3) (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216)) (+.f64 (*.f64 th th) (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 -1/6 (*.f64 (pow.f64 th 3) th)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 th 3) (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216))) (neg.f64 (+.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th (-.f64 th (*.f64 -1/6 (pow.f64 th 3)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th))) (neg.f64 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 th th) (*.f64 (pow.f64 th 6) 1/36)) (-.f64 th (*.f64 -1/6 (pow.f64 th 3))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/6 (pow.f64 th 3) th)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 th 3) -1/6 th)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 th (*.f64 -1/6 (pow.f64 th 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -1/6 (pow.f64 th 3)) th)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 2) (*.f64 th (cbrt.f64 -1/6)) th)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 th) 2) (cbrt.f64 th) (*.f64 -1/6 (pow.f64 th 3)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 -1/6) (pow.f64 th 3/2)) (*.f64 (sqrt.f64 -1/6) (pow.f64 th 3/2)) th)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 th) (sqrt.f64 th) (*.f64 -1/6 (pow.f64 th 3)))))))

simplify151.0ms (0.5%)

Algorithm
egg-herbie
Rules
1274×sqr-pow_binary64
666×pow-sqr_binary64
529×cube-prod_binary64
471×fabs-mul_binary64
438×associate-*l*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0615
11515
23215
35615
411415
532615
6118015
7186915
8195615
9208915
10224715
11248615
12280815
13323115
14373315
15433515
16505715
17537815
18566415
19588615
20606415
21614415
22708415
Stop Event
node limit
Counts
49 → 48
Calls
Call 1
Inputs
th
(*.f64 -1/6 (pow.f64 th 3))
(*.f64 -1/6 (pow.f64 th 3))
Outputs
th
(*.f64 -1/6 (pow.f64 th 3))
(*.f64 -1/6 (pow.f64 th 3))

localize11.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (sin.f64 ky) (sin.f64 th))
6.3b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
Compiler

Compiled 22 to 7 computations (68.2% saved)

series4.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
ky
@0
(*.f64 (sin.f64 ky) (sin.f64 th))
0.0ms
th
@0
(*.f64 (sin.f64 ky) (sin.f64 th))
0.0ms
ky
@0
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
0.0ms
th
@0
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
0.0ms
ky
@inf
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))

rewrite58.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
924×pow1_binary64
859×add-log-exp_binary64
859×log1p-expm1-u_binary64
859×expm1-log1p-u_binary64
842×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0721
115121
2220121
Stop Event
node limit
Counts
2 → 59
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sin.f64 th))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 1 (/.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) (pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 2) (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) (sqrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (/.f64 1 (neg.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) 1) (/.f64 (sin.f64 th) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) 1) (/.f64 (sin.f64 ky) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) 1) (/.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 1) (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (/.f64 (sin.f64 th) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (/.f64 (sin.f64 ky) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 ky))) (/.f64 (sin.f64 th) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (sqrt.f64 (sin.f64 ky))) (/.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (sin.f64 ky))) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) (sqrt.f64 (sin.f64 ky))) (/.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (sin.f64 ky) (sin.f64 th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (cos.f64 (-.f64 ky th)) 2) (/.f64 (cos.f64 (+.f64 ky th)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (sin.f64 th) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (sin.f64 th))))))))

simplify148.0ms (0.5%)

Algorithm
egg-herbie
Rules
672×unswap-sqr_binary64
630×sqr-pow_binary64
622×*-commutative_binary64
514×cube-prod_binary64
438×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
050426
1151426
2407398
31207378
42280378
52577378
62931378
73997378
84177378
94449378
105041378
115629378
126491378
137254378
Stop Event
node limit
Counts
107 → 83
Calls
Call 1
Inputs
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
th
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 -1/5040 (pow.f64 th 7)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th)))
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(*.f64 (sin.f64 th) ky)
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3))) (*.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/120 (*.f64 (sin.f64 th) (pow.f64 ky 5))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3))) (*.f64 (sin.f64 th) ky)))
(+.f64 (*.f64 1/120 (*.f64 (sin.f64 th) (pow.f64 ky 5))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (pow.f64 ky 7))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3))) (*.f64 (sin.f64 th) ky))))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 ky) th)
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (sin.f64 ky) th) (*.f64 1/120 (*.f64 (sin.f64 ky) (pow.f64 th 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (sin.f64 ky) th) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 1/120 (*.f64 (sin.f64 ky) (pow.f64 th 5))))))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
Outputs
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
th
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(fma.f64 -1/6 (pow.f64 th 3) th)
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th))
(fma.f64 -1/6 (pow.f64 th 3) (fma.f64 1/120 (pow.f64 th 5) th))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 -1/5040 (pow.f64 th 7)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th)))
(fma.f64 -1/6 (pow.f64 th 3) (fma.f64 -1/5040 (pow.f64 th 7) (fma.f64 1/120 (pow.f64 th 5) th)))
(fma.f64 -1/6 (pow.f64 th 3) (fma.f64 1/120 (pow.f64 th 5) (fma.f64 -1/5040 (pow.f64 th 7) th)))
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(*.f64 (sin.f64 th) ky)
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3))) (*.f64 (sin.f64 th) ky))
(fma.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (*.f64 (sin.f64 th) ky))
(*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(+.f64 (*.f64 1/120 (*.f64 (sin.f64 th) (pow.f64 ky 5))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3))) (*.f64 (sin.f64 th) ky)))
(fma.f64 1/120 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (fma.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (*.f64 (sin.f64 th) ky)))
(fma.f64 (sin.f64 th) (*.f64 1/120 (pow.f64 ky 5)) (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))))
(*.f64 (sin.f64 th) (+.f64 ky (+.f64 (*.f64 1/120 (pow.f64 ky 5)) (*.f64 -1/6 (pow.f64 ky 3)))))
(+.f64 (*.f64 1/120 (*.f64 (sin.f64 th) (pow.f64 ky 5))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (pow.f64 ky 7))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3))) (*.f64 (sin.f64 th) ky))))
(fma.f64 1/120 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (fma.f64 -1/5040 (*.f64 (sin.f64 th) (pow.f64 ky 7)) (fma.f64 -1/6 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (*.f64 (sin.f64 th) ky))))
(+.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (*.f64 (sin.f64 th) (+.f64 (*.f64 1/120 (pow.f64 ky 5)) (*.f64 -1/5040 (pow.f64 ky 7)))))
(*.f64 (sin.f64 th) (+.f64 (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))) (+.f64 (*.f64 1/120 (pow.f64 ky 5)) (*.f64 -1/5040 (pow.f64 ky 7)))))
(*.f64 (sin.f64 th) (+.f64 (*.f64 1/120 (pow.f64 ky 5)) (+.f64 (*.f64 -1/5040 (pow.f64 ky 7)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))))
(*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) (+.f64 (*.f64 1/120 (pow.f64 ky 5)) (+.f64 ky (*.f64 -1/5040 (pow.f64 ky 7))))))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 ky) th)
(*.f64 th (sin.f64 ky))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sin.f64 ky) th))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (sin.f64 ky)) (*.f64 th (sin.f64 ky)))
(fma.f64 th (sin.f64 ky) (*.f64 (*.f64 -1/6 (pow.f64 th 3)) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (fma.f64 -1/6 (pow.f64 th 3) th))
(*.f64 (fma.f64 -1/6 (pow.f64 th 3) th) (sin.f64 ky))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (sin.f64 ky) th) (*.f64 1/120 (*.f64 (sin.f64 ky) (pow.f64 th 5)))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (sin.f64 ky)) (fma.f64 (sin.f64 ky) th (*.f64 (*.f64 1/120 (sin.f64 ky)) (pow.f64 th 5))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (sin.f64 ky)) (fma.f64 th (sin.f64 ky) (*.f64 (*.f64 1/120 (pow.f64 th 5)) (sin.f64 ky))))
(fma.f64 (pow.f64 th 3) (*.f64 -1/6 (sin.f64 ky)) (*.f64 (sin.f64 ky) (fma.f64 1/120 (pow.f64 th 5) th)))
(*.f64 (sin.f64 ky) (fma.f64 -1/6 (pow.f64 th 3) (fma.f64 1/120 (pow.f64 th 5) th)))
(*.f64 (fma.f64 -1/6 (pow.f64 th 3) (fma.f64 1/120 (pow.f64 th 5) th)) (sin.f64 ky))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (sin.f64 ky) th) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 1/120 (*.f64 (sin.f64 ky) (pow.f64 th 5))))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (sin.f64 ky)) (fma.f64 (sin.f64 ky) th (fma.f64 -1/5040 (*.f64 (pow.f64 th 7) (sin.f64 ky)) (*.f64 (*.f64 1/120 (sin.f64 ky)) (pow.f64 th 5)))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (sin.f64 ky)) (fma.f64 th (sin.f64 ky) (fma.f64 1/120 (*.f64 (pow.f64 th 5) (sin.f64 ky)) (*.f64 (pow.f64 th 7) (*.f64 -1/5040 (sin.f64 ky))))))
(+.f64 (*.f64 (sin.f64 ky) (fma.f64 -1/6 (pow.f64 th 3) th)) (*.f64 (sin.f64 ky) (fma.f64 1/120 (pow.f64 th 5) (*.f64 -1/5040 (pow.f64 th 7)))))
(*.f64 (sin.f64 ky) (fma.f64 -1/6 (pow.f64 th 3) (fma.f64 1/120 (pow.f64 th 5) (fma.f64 -1/5040 (pow.f64 th 7) th))))
(*.f64 (fma.f64 -1/6 (pow.f64 th 3) (fma.f64 1/120 (pow.f64 th 5) (fma.f64 -1/5040 (pow.f64 th 7) th))) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(/.f64 (sin.f64 th) ky)
0.1b
(fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky))
0.3b
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky)))
0.4b
(*.f64 ky 1/6)
Compiler

Compiled 40 to 16 computations (60% saved)

series14.0ms (0%)

Counts
4 → 64
Calls

21 calls:

TimeVariablePointExpression
2.0ms
ky
@-inf
(*.f64 ky 1/6)
1.0ms
th
@inf
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky)))
1.0ms
th
@0
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky)))
1.0ms
th
@-inf
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky)))
1.0ms
ky
@-inf
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky)))

rewrite82.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
516×log-prod_binary64
400×exp-prod_binary64
319×pow-prod-down_binary64
292×prod-diff_binary64
271×pow2_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01045
120445
2254641
Stop Event
node limit
Counts
4 → 136
Calls
Call 1
Inputs
(*.f64 ky 1/6)
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky)))
(fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky))
(/.f64 (sin.f64 th) ky)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 ky 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 ky 1/6))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 ky 1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 ky 1/6)))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 ky 1/6)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 ky 1/6))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 ky 1/6) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 ky ky) 1/36) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 ky 1/6) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 ky 1/6)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 ky 1/6)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 ky 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 ky 1/6))) 2)) (cbrt.f64 (log.f64 (*.f64 ky 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 ky 1/6)))) (sqrt.f64 (log.f64 (*.f64 ky 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 ky ky) 1/36))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 ky 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 ky 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 ky 1/6) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 ky 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 ky 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 ky 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 ky 1/6)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 ky 1/6))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 ky 1/6))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 ky 1/6))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 ky 1/6)) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 ky 1/6) (sin.f64 th)) (sin.f64 ky)) (*.f64 (/.f64 (sin.f64 th) ky) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 ky) (*.f64 (*.f64 ky 1/6) (sin.f64 th))) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 ky) (*.f64 (*.f64 ky 1/6) (sin.f64 th)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 ky 1/6) (sin.f64 th)) (sin.f64 ky) (*.f64 (/.f64 (sin.f64 th) ky) (sin.f64 ky)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sin.f64 th) ky) (*.f64 (*.f64 ky 1/6) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 ky 1/6) (sin.f64 th)) (/.f64 (sin.f64 th) ky))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 ky 1/6) (sin.f64 th)) 1) (/.f64 (sin.f64 th) ky))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (fma.f64 ky 1/6 (/.f64 1 ky)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (fma.f64 ky 1/6 (/.f64 1 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (fma.f64 ky 1/6 (/.f64 1 ky))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (fma.f64 ky 1/6 (/.f64 1 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))) 2) (cbrt.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))) (sqrt.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 ky 1/6) (sin.f64 th)) 3) (pow.f64 (/.f64 (sin.f64 th) ky) 3)) (+.f64 (pow.f64 (*.f64 (*.f64 ky 1/6) (sin.f64 th)) 2) (-.f64 (pow.f64 (/.f64 (sin.f64 th) ky) 2) (*.f64 (*.f64 (*.f64 ky 1/6) (sin.f64 th)) (/.f64 (sin.f64 th) ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (*.f64 ky 1/6) (sin.f64 th)) 2) (pow.f64 (/.f64 (sin.f64 th) ky) 2)) (-.f64 (*.f64 (*.f64 ky 1/6) (sin.f64 th)) (/.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 th)) (fma.f64 ky 1/6 (/.f64 1 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 th) ky))) (pow.f64 (exp.f64 (*.f64 ky 1/6)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (*.f64 ky 1/6)) (sin.f64 th)) (+.f64 1 (expm1.f64 (/.f64 (sin.f64 th) ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sin.f64 th) (fma.f64 ky 1/6 (/.f64 1 ky)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 th) ky))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 th) ky))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 th) ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 th) ky)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 th) ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 th) ky))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 1 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) ky) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 th) ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 th) ky)) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) ky) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) ky) 2)) (cbrt.f64 (/.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (*.f64 (cbrt.f64 (sin.f64 th)) (/.f64 1 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 th) ky)) (sqrt.f64 (/.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 th)) (*.f64 (sqrt.f64 (sin.f64 th)) (/.f64 1 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 th)) (/.f64 1 (neg.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 ky) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 th)) ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) 1) (/.f64 (sqrt.f64 (sin.f64 th)) ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 ky) -2) (/.f64 (sin.f64 th) (cbrt.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (cbrt.f64 (*.f64 ky ky))) (cbrt.f64 (/.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 (*.f64 ky ky))) (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 ky -1/2) (/.f64 (sin.f64 th) (sqrt.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (sqrt.f64 ky)) (/.f64 (cbrt.f64 (sin.f64 th)) (sqrt.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 th) ky) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) ky) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) ky) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) ky)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) ky)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 ky (sin.f64 th)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 ky 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 ky (sin.f64 th)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (sin.f64 th) ky))) 2)) (cbrt.f64 (log.f64 (/.f64 (sin.f64 th) ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (sin.f64 th) ky)))) (sqrt.f64 (log.f64 (/.f64 (sin.f64 th) ky))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 th) (neg.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 th) ky) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 th) ky))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) ky) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 ky 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) ky)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (sin.f64 th) ky))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (sin.f64 th) ky))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (sin.f64 th) ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 ky (sin.f64 th))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) ky)) 1) 1))))))

simplify73.0ms (0.2%)

Algorithm
egg-herbie
Rules
852×times-frac_binary64
584×unsub-neg_binary64
438×fma-def_binary64
311×+-commutative_binary64
238×associate-+l+_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0981221
12681083
27201054
332371036
459481008
Stop Event
node limit
Counts
200 → 176
Calls
Call 1
Inputs
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(sin.f64 th)
(+.f64 (*.f64 (+.f64 (*.f64 -1/6 (sin.f64 th)) (*.f64 1/6 (sin.f64 th))) (pow.f64 ky 2)) (sin.f64 th))
(+.f64 (*.f64 (+.f64 (*.f64 -1/6 (sin.f64 th)) (*.f64 1/6 (sin.f64 th))) (pow.f64 ky 2)) (+.f64 (sin.f64 th) (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 ky 4))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/5040 (sin.f64 th)) (*.f64 1/720 (sin.f64 th))) (pow.f64 ky 6)) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (sin.f64 th)) (*.f64 1/6 (sin.f64 th))) (pow.f64 ky 2)) (+.f64 (sin.f64 th) (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 ky 4)))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) ky) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) ky) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) ky) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) ky) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) ky) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) ky) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky))))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 (-.f64 (*.f64 -1/36 ky) (*.f64 1/6 (/.f64 1 ky))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 (-.f64 (*.f64 -1/36 ky) (*.f64 1/6 (/.f64 1 ky))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th)) (*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/120 (/.f64 1 ky)) (*.f64 1/720 ky)) (pow.f64 th 5)))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/36 ky) (*.f64 1/6 (/.f64 1 ky))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (-.f64 (*.f64 -1/30240 ky) (*.f64 1/5040 (/.f64 1 ky))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (+.f64 (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th)) (*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/120 (/.f64 1 ky)) (*.f64 1/720 ky)) (pow.f64 th 5))))))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th)
(+.f64 (*.f64 (-.f64 (*.f64 -1/36 ky) (*.f64 1/6 (/.f64 1 ky))) (pow.f64 th 3)) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))
(+.f64 (*.f64 (-.f64 (*.f64 -1/36 ky) (*.f64 1/6 (/.f64 1 ky))) (pow.f64 th 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/120 (/.f64 1 ky)) (*.f64 1/720 ky)) (pow.f64 th 5)) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th)))
(+.f64 (*.f64 (-.f64 (*.f64 -1/30240 ky) (*.f64 1/5040 (/.f64 1 ky))) (pow.f64 th 7)) (+.f64 (*.f64 (-.f64 (*.f64 -1/36 ky) (*.f64 1/6 (/.f64 1 ky))) (pow.f64 th 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/120 (/.f64 1 ky)) (*.f64 1/720 ky)) (pow.f64 th 5)) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(/.f64 (sin.f64 th) ky)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(*.f64 1/6 (*.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(*.f64 1/6 (*.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(/.f64 th ky)
(+.f64 (/.f64 th ky) (*.f64 -1/6 (/.f64 (pow.f64 th 3) ky)))
(+.f64 (/.f64 th ky) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) ky)) (*.f64 1/120 (/.f64 (pow.f64 th 5) ky))))
(+.f64 (/.f64 th ky) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) ky)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 th 5) ky)) (*.f64 -1/5040 (/.f64 (pow.f64 th 7) ky)))))
Outputs
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(*.f64 1/6 ky)
(sin.f64 th)
(+.f64 (*.f64 (+.f64 (*.f64 -1/6 (sin.f64 th)) (*.f64 1/6 (sin.f64 th))) (pow.f64 ky 2)) (sin.f64 th))
(sin.f64 th)
(+.f64 (*.f64 (+.f64 (*.f64 -1/6 (sin.f64 th)) (*.f64 1/6 (sin.f64 th))) (pow.f64 ky 2)) (+.f64 (sin.f64 th) (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 ky 4))))
(+.f64 (fma.f64 (*.f64 (sin.f64 th) 0) (*.f64 ky ky) (sin.f64 th)) (*.f64 (*.f64 (sin.f64 th) -7/360) (pow.f64 ky 4)))
(fma.f64 0 (*.f64 ky ky) (fma.f64 (*.f64 (sin.f64 th) -7/360) (pow.f64 ky 4) (sin.f64 th)))
(+.f64 (sin.f64 th) (fma.f64 (*.f64 (sin.f64 th) (pow.f64 ky 4)) -7/360 0))
(fma.f64 (sin.f64 th) (*.f64 (pow.f64 ky 4) -7/360) (sin.f64 th))
(+.f64 (*.f64 (+.f64 (*.f64 -1/5040 (sin.f64 th)) (*.f64 1/720 (sin.f64 th))) (pow.f64 ky 6)) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (sin.f64 th)) (*.f64 1/6 (sin.f64 th))) (pow.f64 ky 2)) (+.f64 (sin.f64 th) (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 ky 4)))))
(fma.f64 (*.f64 (sin.f64 th) 1/840) (pow.f64 ky 6) (+.f64 (fma.f64 (*.f64 (sin.f64 th) 0) (*.f64 ky ky) (sin.f64 th)) (*.f64 (*.f64 (sin.f64 th) -7/360) (pow.f64 ky 4))))
(fma.f64 (*.f64 (sin.f64 th) 1/840) (pow.f64 ky 6) (fma.f64 0 (*.f64 ky ky) (fma.f64 (*.f64 (sin.f64 th) -7/360) (pow.f64 ky 4) (sin.f64 th))))
(+.f64 0 (+.f64 (sin.f64 th) (*.f64 (sin.f64 th) (+.f64 (*.f64 (pow.f64 ky 4) -7/360) (*.f64 (pow.f64 ky 6) 1/840)))))
(+.f64 (sin.f64 th) (*.f64 (sin.f64 th) (+.f64 (*.f64 (pow.f64 ky 6) 1/840) (*.f64 (pow.f64 ky 4) -7/360))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 (*.f64 1/6 ky) (*.f64 (sin.f64 th) (sin.f64 ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) ky) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky)))) (/.f64 (sin.f64 th) (/.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) ky) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky)))) (/.f64 (sin.f64 th) (/.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) ky) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky)))) (/.f64 (sin.f64 th) (/.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 (*.f64 1/6 ky) (*.f64 (sin.f64 th) (sin.f64 ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) ky) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky)))) (/.f64 (sin.f64 th) (/.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) ky) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky)))) (/.f64 (sin.f64 th) (/.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) ky) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky)))) (/.f64 (sin.f64 th) (/.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (fma.f64 1/6 ky (/.f64 1 ky)) (*.f64 th (sin.f64 ky)))
(*.f64 th (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/36 ky) (*.f64 1/6 (/.f64 1 ky))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th)))
(fma.f64 (-.f64 (*.f64 ky -1/36) (/.f64 1/6 ky)) (*.f64 (sin.f64 ky) (pow.f64 th 3)) (*.f64 (fma.f64 1/6 ky (/.f64 1 ky)) (*.f64 th (sin.f64 ky))))
(fma.f64 (fma.f64 1/6 ky (/.f64 1 ky)) (*.f64 th (sin.f64 ky)) (*.f64 (fma.f64 ky -1/36 (/.f64 -1/6 ky)) (*.f64 (sin.f64 ky) (pow.f64 th 3))))
(*.f64 (sin.f64 ky) (fma.f64 th (fma.f64 1/6 ky (/.f64 1 ky)) (*.f64 (fma.f64 ky -1/36 (/.f64 -1/6 ky)) (pow.f64 th 3))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/36 ky) (*.f64 1/6 (/.f64 1 ky))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th)) (*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/120 (/.f64 1 ky)) (*.f64 1/720 ky)) (pow.f64 th 5)))))
(fma.f64 (-.f64 (*.f64 ky -1/36) (/.f64 1/6 ky)) (*.f64 (sin.f64 ky) (pow.f64 th 3)) (fma.f64 (fma.f64 1/6 ky (/.f64 1 ky)) (*.f64 th (sin.f64 ky)) (*.f64 (sin.f64 ky) (*.f64 (+.f64 (/.f64 1/120 ky) (*.f64 ky 1/720)) (pow.f64 th 5)))))
(fma.f64 (fma.f64 ky -1/36 (/.f64 -1/6 ky)) (*.f64 (sin.f64 ky) (pow.f64 th 3)) (fma.f64 (fma.f64 1/6 ky (/.f64 1 ky)) (*.f64 th (sin.f64 ky)) (*.f64 (fma.f64 ky 1/720 (/.f64 1/120 ky)) (*.f64 (pow.f64 th 5) (sin.f64 ky)))))
(fma.f64 (sin.f64 ky) (*.f64 (fma.f64 ky -1/36 (/.f64 -1/6 ky)) (pow.f64 th 3)) (*.f64 (sin.f64 ky) (fma.f64 th (fma.f64 1/6 ky (/.f64 1 ky)) (*.f64 (fma.f64 ky 1/720 (/.f64 1/120 ky)) (pow.f64 th 5)))))
(*.f64 (sin.f64 ky) (fma.f64 th (fma.f64 1/6 ky (/.f64 1 ky)) (fma.f64 (fma.f64 ky -1/36 (/.f64 -1/6 ky)) (pow.f64 th 3) (*.f64 (fma.f64 ky 1/720 (/.f64 1/120 ky)) (pow.f64 th 5)))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/36 ky) (*.f64 1/6 (/.f64 1 ky))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (-.f64 (*.f64 -1/30240 ky) (*.f64 1/5040 (/.f64 1 ky))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (+.f64 (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th)) (*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/120 (/.f64 1 ky)) (*.f64 1/720 ky)) (pow.f64 th 5))))))
(fma.f64 (-.f64 (*.f64 ky -1/36) (/.f64 1/6 ky)) (*.f64 (sin.f64 ky) (pow.f64 th 3)) (fma.f64 (-.f64 (*.f64 ky -1/30240) (/.f64 1/5040 ky)) (*.f64 (sin.f64 ky) (pow.f64 th 7)) (fma.f64 (fma.f64 1/6 ky (/.f64 1 ky)) (*.f64 th (sin.f64 ky)) (*.f64 (sin.f64 ky) (*.f64 (+.f64 (/.f64 1/120 ky) (*.f64 ky 1/720)) (pow.f64 th 5))))))
(fma.f64 (fma.f64 ky -1/36 (/.f64 -1/6 ky)) (*.f64 (sin.f64 ky) (pow.f64 th 3)) (fma.f64 (fma.f64 ky -1/30240 (/.f64 -1/5040 ky)) (*.f64 (sin.f64 ky) (pow.f64 th 7)) (fma.f64 (fma.f64 1/6 ky (/.f64 1 ky)) (*.f64 th (sin.f64 ky)) (*.f64 (fma.f64 ky 1/720 (/.f64 1/120 ky)) (*.f64 (pow.f64 th 5) (sin.f64 ky))))))
(+.f64 (*.f64 (sin.f64 ky) (fma.f64 th (fma.f64 1/6 ky (/.f64 1 ky)) (*.f64 (fma.f64 ky 1/720 (/.f64 1/120 ky)) (pow.f64 th 5)))) (*.f64 (sin.f64 ky) (fma.f64 (fma.f64 ky -1/36 (/.f64 -1/6 ky)) (pow.f64 th 3) (*.f64 (fma.f64 ky -1/30240 (/.f64 -1/5040 ky)) (pow.f64 th 7)))))
(*.f64 (sin.f64 ky) (fma.f64 (fma.f64 ky -1/36 (/.f64 -1/6 ky)) (pow.f64 th 3) (fma.f64 (fma.f64 ky -1/30240 (/.f64 -1/5040 ky)) (pow.f64 th 7) (fma.f64 th (fma.f64 1/6 ky (/.f64 1 ky)) (*.f64 (fma.f64 ky 1/720 (/.f64 1/120 ky)) (pow.f64 th 5))))))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky)))) (/.f64 (sin.f64 th) (/.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky)))) (/.f64 (sin.f64 th) (/.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky)))) (/.f64 (sin.f64 th) (/.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky)))) (/.f64 (sin.f64 th) (/.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky)))) (/.f64 (sin.f64 th) (/.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky)))) (/.f64 (sin.f64 th) (/.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky)))) (/.f64 (sin.f64 th) (/.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)) (sin.f64 ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky)))) (/.f64 (sin.f64 th) (/.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th)
(*.f64 th (fma.f64 1/6 ky (/.f64 1 ky)))
(fma.f64 (*.f64 1/6 ky) th (/.f64 th ky))
(+.f64 (*.f64 (-.f64 (*.f64 -1/36 ky) (*.f64 1/6 (/.f64 1 ky))) (pow.f64 th 3)) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))
(fma.f64 (-.f64 (*.f64 ky -1/36) (/.f64 1/6 ky)) (pow.f64 th 3) (*.f64 th (fma.f64 1/6 ky (/.f64 1 ky))))
(fma.f64 th (fma.f64 1/6 ky (/.f64 1 ky)) (*.f64 (fma.f64 ky -1/36 (/.f64 -1/6 ky)) (pow.f64 th 3)))
(+.f64 (*.f64 (-.f64 (*.f64 -1/36 ky) (*.f64 1/6 (/.f64 1 ky))) (pow.f64 th 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/120 (/.f64 1 ky)) (*.f64 1/720 ky)) (pow.f64 th 5)) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th)))
(fma.f64 (-.f64 (*.f64 ky -1/36) (/.f64 1/6 ky)) (pow.f64 th 3) (fma.f64 (+.f64 (/.f64 1/120 ky) (*.f64 ky 1/720)) (pow.f64 th 5) (*.f64 th (fma.f64 1/6 ky (/.f64 1 ky)))))
(fma.f64 (fma.f64 ky -1/36 (/.f64 -1/6 ky)) (pow.f64 th 3) (fma.f64 (fma.f64 ky 1/720 (/.f64 1/120 ky)) (pow.f64 th 5) (*.f64 th (fma.f64 1/6 ky (/.f64 1 ky)))))
(fma.f64 th (fma.f64 1/6 ky (/.f64 1 ky)) (fma.f64 (fma.f64 ky -1/36 (/.f64 -1/6 ky)) (pow.f64 th 3) (*.f64 (fma.f64 ky 1/720 (/.f64 1/120 ky)) (pow.f64 th 5))))
(+.f64 (*.f64 (-.f64 (*.f64 -1/30240 ky) (*.f64 1/5040 (/.f64 1 ky))) (pow.f64 th 7)) (+.f64 (*.f64 (-.f64 (*.f64 -1/36 ky) (*.f64 1/6 (/.f64 1 ky))) (pow.f64 th 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/120 (/.f64 1 ky)) (*.f64 1/720 ky)) (pow.f64 th 5)) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))))
(fma.f64 (-.f64 (*.f64 ky -1/30240) (/.f64 1/5040 ky)) (pow.f64 th 7) (fma.f64 (-.f64 (*.f64 ky -1/36) (/.f64 1/6 ky)) (pow.f64 th 3) (fma.f64 (+.f64 (/.f64 1/120 ky) (*.f64 ky 1/720)) (pow.f64 th 5) (*.f64 th (fma.f64 1/6 ky (/.f64 1 ky))))))
(fma.f64 (fma.f64 ky -1/30240 (/.f64 -1/5040 ky)) (pow.f64 th 7) (fma.f64 (fma.f64 ky -1/36 (/.f64 -1/6 ky)) (pow.f64 th 3) (fma.f64 (fma.f64 ky 1/720 (/.f64 1/120 ky)) (pow.f64 th 5) (*.f64 th (fma.f64 1/6 ky (/.f64 1 ky))))))
(fma.f64 (fma.f64 ky -1/36 (/.f64 -1/6 ky)) (pow.f64 th 3) (fma.f64 (fma.f64 ky -1/30240 (/.f64 -1/5040 ky)) (pow.f64 th 7) (fma.f64 th (fma.f64 1/6 ky (/.f64 1 ky)) (*.f64 (fma.f64 ky 1/720 (/.f64 1/120 ky)) (pow.f64 th 5)))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(/.f64 (sin.f64 th) ky)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(*.f64 1/6 (*.f64 (sin.f64 th) ky))
(*.f64 1/6 (*.f64 ky (sin.f64 th)))
(*.f64 (*.f64 1/6 ky) (sin.f64 th))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(*.f64 1/6 (*.f64 (sin.f64 th) ky))
(*.f64 1/6 (*.f64 ky (sin.f64 th)))
(*.f64 (*.f64 1/6 ky) (sin.f64 th))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky))
(fma.f64 1/6 (*.f64 ky (sin.f64 th)) (/.f64 (sin.f64 th) ky))
(fma.f64 (*.f64 1/6 ky) (sin.f64 th) (/.f64 (sin.f64 th) ky))
(/.f64 th ky)
(+.f64 (/.f64 th ky) (*.f64 -1/6 (/.f64 (pow.f64 th 3) ky)))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) ky) (/.f64 th ky))
(+.f64 (/.f64 th ky) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) ky)) (*.f64 1/120 (/.f64 (pow.f64 th 5) ky))))
(+.f64 (/.f64 th ky) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) ky) (/.f64 (*.f64 1/120 (pow.f64 th 5)) ky)))
(+.f64 (/.f64 th ky) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) ky) (*.f64 1/120 (/.f64 (pow.f64 th 5) ky))))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) ky) (fma.f64 1/120 (/.f64 (pow.f64 th 5) ky) (/.f64 th ky)))
(+.f64 (/.f64 th ky) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) ky)) (+.f64 (*.f64 1/120 (/.f64 (pow.f64 th 5) ky)) (*.f64 -1/5040 (/.f64 (pow.f64 th 7) ky)))))
(+.f64 (/.f64 th ky) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) ky) (fma.f64 1/120 (/.f64 (pow.f64 th 5) ky) (/.f64 (*.f64 -1/5040 (pow.f64 th 7)) ky))))
(+.f64 (/.f64 th ky) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) ky) (fma.f64 1/120 (/.f64 (pow.f64 th 5) ky) (*.f64 -1/5040 (/.f64 (pow.f64 th 7) ky)))))
(+.f64 (fma.f64 -1/6 (/.f64 (pow.f64 th 3) ky) (fma.f64 1/120 (/.f64 (pow.f64 th 5) ky) (*.f64 -1/5040 (/.f64 (pow.f64 th 7) ky)))) (/.f64 th ky))
(+.f64 (fma.f64 1/120 (/.f64 (pow.f64 th 5) ky) (/.f64 th ky)) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) ky) (/.f64 (pow.f64 th 7) (/.f64 ky -1/5040))))

localize21.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
0.2b
(*.f64 (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)) (sin.f64 th))
0.2b
(/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.3b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
Compiler

Compiled 48 to 17 computations (64.6% saved)

series6.0ms (0%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
1.0ms
ky
@0
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
1.0ms
ky
@0
(*.f64 (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)) (sin.f64 th))
0.0ms
th
@0
(*.f64 (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)) (sin.f64 th))
0.0ms
kx
@0
(*.f64 (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)) (sin.f64 th))
0.0ms
kx
@0
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))

rewrite63.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
574×log-prod_binary64
351×pow-prod-down_binary64
302×pow2_binary64
214×pow1/3_binary64
211×pow-unpow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01231
123731
2284631
Stop Event
node limit
Counts
2 → 57
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)) (sin.f64 th))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 ky) 1) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) -1) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (*.f64 (sin.f64 ky) (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1) 1))))))

simplify77.0ms (0.2%)

Algorithm
egg-herbie
Rules
915×fma-def_binary64
669×associate-*l*_binary64
402×times-frac_binary64
385×distribute-rgt-in_binary64
373×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01902853
16052823
222512658
Stop Event
node limit
Counts
117 → 98
Calls
Call 1
Inputs
(/.f64 ky (sin.f64 kx))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (/.f64 ky (sin.f64 kx)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 1/5040 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 ky 7))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
1
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) 1))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) (+.f64 1 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
Outputs
(/.f64 ky (sin.f64 kx))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (/.f64 ky (sin.f64 kx)))
(fma.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (/.f64 ky (sin.f64 kx)))
(-.f64 (/.f64 ky (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx))))
(fma.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (fma.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 -1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx))))
(-.f64 (fma.f64 (+.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx))) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))))
(fma.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (+.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 -1/4 (pow.f64 (sin.f64 kx) 3)) (/.f64 -1/12 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 5) (-.f64 (/.f64 ky (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 1/5040 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 ky 7))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx)))))
(fma.f64 -1 (*.f64 (fma.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3)) (+.f64 (/.f64 1/5040 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 -1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))))) (pow.f64 ky 7)) (fma.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (fma.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 -1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx)))))
(fma.f64 (neg.f64 (fma.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3)) (fma.f64 1/2 (+.f64 (/.f64 (+.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (/.f64 1/5040 (sin.f64 kx))))) (pow.f64 ky 7) (-.f64 (fma.f64 (+.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx))) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))))))
(-.f64 (fma.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (+.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 -1/4 (pow.f64 (sin.f64 kx) 3)) (/.f64 -1/12 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx))) (fma.f64 (fma.f64 1/2 (fma.f64 (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (+.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 -1/4 (pow.f64 (sin.f64 kx) 3)) (/.f64 -1/12 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2))) (fma.f64 1/2 (/.f64 (fma.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)) 2/45) (pow.f64 (sin.f64 kx) 3)) (/.f64 1/5040 (sin.f64 kx)))) (pow.f64 ky 7) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
1
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1)
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1)
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1)
(fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) 1))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4) 1))
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4) 1))
(fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2))) (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) (+.f64 1 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (+.f64 (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4) 1) (neg.f64 (*.f64 (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2)) (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6)))))
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (-.f64 (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4) 1) (*.f64 (fma.f64 1/2 (-.f64 (/.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (pow.f64 (sin.f64 ky) 2)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))) (fma.f64 1/2 (-.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 2)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))) (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))
(-.f64 (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2))) (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1)) (*.f64 (fma.f64 1/2 (+.f64 (-.f64 (/.f64 1/4 (pow.f64 (pow.f64 (sin.f64 ky) 2) 3)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 4))) (-.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 2)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 4)))) (/.f64 (fma.f64 1/4 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/12) (pow.f64 (sin.f64 ky) 4))) (pow.f64 kx 6)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))))))
(fma.f64 (pow.f64 ky 3) (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))
(fma.f64 (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5) (+.f64 (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))))))
(fma.f64 (pow.f64 ky 5) (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (fma.f64 (pow.f64 ky 3) (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(fma.f64 (pow.f64 ky 5) (fma.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 (/.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (fma.f64 (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5) (+.f64 (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))))))) (pow.f64 ky 7) (*.f64 (pow.f64 ky 3) (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))))))))
(+.f64 (fma.f64 (pow.f64 ky 5) (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (fma.f64 (pow.f64 ky 3) (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))) (*.f64 (pow.f64 ky 7) (-.f64 (/.f64 -1/5040 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (*.f64 -1/2 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))))))
(fma.f64 (pow.f64 ky 5) (fma.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 (/.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (fma.f64 (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (fma.f64 (pow.f64 ky 7) (-.f64 (*.f64 (/.f64 -1/5040 (sin.f64 kx)) (sin.f64 th)) (fma.f64 1/2 (/.f64 (fma.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 (/.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (fma.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)) 2/45) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (/.f64 (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)) (pow.f64 (sin.f64 kx) 2))))) (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(fma.f64 -1 (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))))))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(fma.f64 -1 (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))) (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (neg.f64 (*.f64 (pow.f64 kx 6) (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))))))))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (pow.f64 kx 6) (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2))))) (*.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))))))
(-.f64 (-.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))))) (*.f64 (pow.f64 kx 6) (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (-.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 2)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 4))) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (fma.f64 1/4 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/12))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) -1/6)))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 th (*.f64 (pow.f64 th 3) -1/6)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) -1/6))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 th (*.f64 (pow.f64 th 3) -1/6))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3))) (fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 7)) -1/5040)))))
(+.f64 (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 th (*.f64 (pow.f64 th 7) -1/5040))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 5) 1/120))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))

eval279.0ms (0.9%)

Compiler

Compiled 15859 to 7731 computations (51.3% saved)

prune186.0ms (0.6%)

Pruning

62 alts after pruning (55 fresh and 7 done)

PrunedKeptTotal
New66634700
Fresh122133
Picked101
Done279
Total68162743
Error
0b
Counts
743 → 62
Alt Table
Click to see full alt table
StatusErrorProgram
56.8b
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
47.5b
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
46.3b
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th)))
56.1b
(*.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (/.f64 1 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))
57.3b
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))
0.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
56.7b
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
58.0b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
56.8b
(/.f64 (/.f64 1 (/.f64 2 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))))) (sin.f64 ky))
0.2b
(*.f64 (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th))
44.3b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
52.9b
(*.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1) (sin.f64 th))
56.3b
(sqrt.f64 (pow.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 2))
15.5b
(*.f64 (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sin.f64 th))
49.7b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
56.7b
(+.f64 (-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1) th)
60.4b
(*.f64 th (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
52.6b
(/.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 ky) (sin.f64 th))) 1) (sin.f64 ky))
52.1b
(*.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 th) (sin.f64 ky))) 1))
48.1b
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
56.1b
th
58.3b
(*.f64 -1/6 (pow.f64 th 3))
56.9b
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
0.2b
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
52.7b
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
56.8b
(pow.f64 (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) 3)
48.1b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
0.4b
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))
56.3b
(*.f64 (sin.f64 ky) (exp.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 ky)))))
2.7b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))
46.2b
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th))))
56.3b
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 ky)))
0.3b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
48.1b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
57.3b
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
49.7b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
39.5b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (*.f64 ky ky)))) (sin.f64 th))
49.3b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
55.6b
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
56.1b
(/.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
33.6b
(*.f64 (sin.f64 ky) (exp.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
2.8b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
49.7b
(sin.f64 th)
49.8b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)))
60.5b
(*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))
16.0b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky))))))) (sin.f64 th))
0.2b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
47.1b
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (sin.f64 th))
48.1b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
0.4b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
54.8b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
51.2b
(-.f64 (+.f64 1 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 1)
49.5b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
56.7b
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
60.8b
(exp.f64 (log.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))
7.5b
(/.f64 (sin.f64 th) (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 3)))
60.3b
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 th ky)))
49.4b
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
30.8b
(pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2)
57.3b
(*.f64 (sin.f64 ky) (*.f64 (*.f64 1/6 ky) (sin.f64 th)))
57.3b
(*.f64 (*.f64 1/6 ky) (*.f64 (sin.f64 th) (sin.f64 ky)))
48.4b
(/.f64 (sin.f64 th) (+.f64 (/.f64 (sin.f64 kx) ky) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky)))
Compiler

Compiled 1654 to 1206 computations (27.1% saved)

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
0.1b
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
0.2b
(*.f64 (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th))
0.2b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
Compiler

Compiled 49 to 14 computations (71.4% saved)

series7.0ms (0%)

Counts
2 → 60
Calls

15 calls:

TimeVariablePointExpression
1.0ms
th
@-inf
(*.f64 (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th))
1.0ms
ky
@0
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
1.0ms
ky
@0
(*.f64 (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th))
0.0ms
kx
@0
(*.f64 (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th))
0.0ms
th
@0
(*.f64 (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th))

rewrite66.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
602×log-prod_binary64
331×pow-prod-down_binary64
311×pow2_binary64
220×pow-unpow_binary64
219×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01234
124331
2306731
Stop Event
node limit
Counts
2 → 85
Calls
Call 1
Inputs
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2) (/.f64 (sin.f64 ky) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (/.f64 (cbrt.f64 (sin.f64 ky)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) -1/2) (/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (cbrt.f64 (sin.f64 ky)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) -2) (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (neg.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (cbrt.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 2)) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (sin.f64 th)) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sqrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 th) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 th) 1) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 1 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (sin.f64 th) (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 2))) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (sin.f64 th)) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 th) -1) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))) 2))))))

simplify78.0ms (0.2%)

Algorithm
egg-herbie
Rules
915×fma-def_binary64
669×associate-*l*_binary64
402×times-frac_binary64
385×distribute-rgt-in_binary64
373×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01902853
16052823
222512658
Stop Event
node limit
Counts
145 → 126
Calls
Call 1
Inputs
(/.f64 ky (sin.f64 kx))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (/.f64 ky (sin.f64 kx)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 1/5040 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 ky 7))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
1
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) 1))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) (+.f64 1 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
Outputs
(/.f64 ky (sin.f64 kx))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (/.f64 ky (sin.f64 kx)))
(fma.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (/.f64 ky (sin.f64 kx)))
(-.f64 (/.f64 ky (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx))))
(fma.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (fma.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 -1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx))))
(-.f64 (fma.f64 (+.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx))) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))))
(fma.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (+.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 -1/4 (pow.f64 (sin.f64 kx) 3)) (/.f64 -1/12 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 5) (-.f64 (/.f64 ky (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 1/5040 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 ky 7))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))))) (+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 1 (sin.f64 kx))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 1/2 (/.f64 1 (pow.f64 (sin.f64 kx) 3))) (*.f64 1/6 (/.f64 1 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5)) (/.f64 ky (sin.f64 kx)))))
(fma.f64 -1 (*.f64 (fma.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3)) (+.f64 (/.f64 1/5040 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 -1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))))) (pow.f64 ky 7)) (fma.f64 -1 (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx)))) (fma.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 -1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx)))))
(fma.f64 (neg.f64 (fma.f64 1/2 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3)) (fma.f64 1/2 (+.f64 (/.f64 (+.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (/.f64 1/5040 (sin.f64 kx))))) (pow.f64 ky 7) (-.f64 (fma.f64 (+.f64 (/.f64 1/120 (sin.f64 kx)) (*.f64 1/2 (+.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx))) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))))))
(-.f64 (fma.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (+.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 -1/4 (pow.f64 (sin.f64 kx) 3)) (/.f64 -1/12 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 5) (/.f64 ky (sin.f64 kx))) (fma.f64 (fma.f64 1/2 (fma.f64 (/.f64 (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (-.f64 (/.f64 1/120 (sin.f64 kx)) (+.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3)) (/.f64 (+.f64 (/.f64 -1/4 (pow.f64 (sin.f64 kx) 3)) (/.f64 -1/12 (sin.f64 kx))) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 2))) (fma.f64 1/2 (/.f64 (fma.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)) 2/45) (pow.f64 (sin.f64 kx) 3)) (/.f64 1/5040 (sin.f64 kx)))) (pow.f64 ky 7) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 1/2 (pow.f64 (sin.f64 kx) 3)) (/.f64 1/6 (sin.f64 kx))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
1
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) 1)
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) 1)
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1)
(fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) 1))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4) 1))
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4) 1))
(fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2))) (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4)) (+.f64 1 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/4 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (+.f64 (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4) 1) (neg.f64 (*.f64 (fma.f64 1/2 (/.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2)) (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6)))))
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (-.f64 (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4) 1) (*.f64 (fma.f64 1/2 (-.f64 (/.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (pow.f64 (sin.f64 ky) 2)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))) (fma.f64 1/2 (-.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 2)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))) (*.f64 1/4 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))
(-.f64 (fma.f64 (-.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 4)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2))) (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1)) (*.f64 (fma.f64 1/2 (+.f64 (-.f64 (/.f64 1/4 (pow.f64 (pow.f64 (sin.f64 ky) 2) 3)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 4))) (-.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 2)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 4)))) (/.f64 (fma.f64 1/4 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/12) (pow.f64 (sin.f64 ky) 4))) (pow.f64 kx 6)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))
(*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))))))
(fma.f64 (pow.f64 ky 3) (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))
(fma.f64 (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5) (+.f64 (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))))))
(fma.f64 (pow.f64 ky 5) (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (fma.f64 (pow.f64 ky 3) (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(fma.f64 (pow.f64 ky 5) (fma.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 (/.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (fma.f64 (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th)))))
(+.f64 (*.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5)) (+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 (-.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 2))) (*.f64 1/2 (/.f64 (*.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (*.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 ky 3)))))
(fma.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 ky 5) (+.f64 (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))) (*.f64 1/2 (/.f64 (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (/.f64 (pow.f64 (sin.f64 kx) 3) (sin.f64 th))))))) (pow.f64 ky 7) (*.f64 (pow.f64 ky 3) (-.f64 (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))))))))
(+.f64 (fma.f64 (pow.f64 ky 5) (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (fma.f64 (pow.f64 ky 3) (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))) (*.f64 (pow.f64 ky 7) (-.f64 (/.f64 -1/5040 (/.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/2 (/.f64 (-.f64 (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (*.f64 -1/2 (*.f64 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (sin.f64 th)) (pow.f64 (sin.f64 kx) 3))) (pow.f64 (sin.f64 kx) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)))))))))
(fma.f64 (pow.f64 ky 5) (fma.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 (/.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (fma.f64 (pow.f64 ky 3) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (fma.f64 (pow.f64 ky 7) (-.f64 (*.f64 (/.f64 -1/5040 (sin.f64 kx)) (sin.f64 th)) (fma.f64 1/2 (/.f64 (fma.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 (/.f64 (*.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2))))) (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)))) (pow.f64 (sin.f64 kx) 2)) (fma.f64 1/2 (*.f64 (/.f64 (fma.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 (sin.f64 kx) 2)) 2/45) (pow.f64 (sin.f64 kx) 3)) (sin.f64 th)) (/.f64 (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (-.f64 -1/6 (/.f64 1/2 (pow.f64 (sin.f64 kx) 2)))) (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6)) (pow.f64 (sin.f64 kx) 2))))) (/.f64 ky (/.f64 (sin.f64 kx) (sin.f64 th))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(sin.f64 th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)))
(fma.f64 -1 (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))))))
(-.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 kx 4))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (sin.f64 th) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (pow.f64 (sin.f64 ky) 2))) (*.f64 1/4 (/.f64 (*.f64 (sin.f64 th) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4))))) (pow.f64 kx 6))))))
(fma.f64 -1 (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))))))) (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (neg.f64 (*.f64 (pow.f64 kx 6) (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 -1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (-.f64 2/45 (*.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))))))))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th)) (*.f64 (pow.f64 kx 6) (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 2/45 (*.f64 1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (pow.f64 (sin.f64 ky) 2))))) (*.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)))))))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2))) (*.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4))))))
(-.f64 (-.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))))) (*.f64 (pow.f64 kx 6) (fma.f64 -1/2 (/.f64 (fma.f64 -1/4 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6))) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (*.f64 (-.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 2)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 4))) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (fma.f64 1/4 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/12))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th)))
(fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) -1/6)))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 th (*.f64 (pow.f64 th 3) -1/6)))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) -1/6))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 th (*.f64 (pow.f64 th 3) -1/6))))
(+.f64 (*.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7)))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (fma.f64 -1/5040 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th)))))
(fma.f64 1/120 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (fma.f64 -1/6 (*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (pow.f64 th 3))) (fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) th) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (*.f64 (sin.f64 ky) (pow.f64 th 7)) -1/5040)))))
(+.f64 (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 th (*.f64 (pow.f64 th 7) -1/5040))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))) (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 5) 1/120))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th)))

localize7.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(*.f64 -1/6 (pow.f64 th 3))
Compiler

Compiled 14 to 11 computations (21.4% saved)

localize14.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (sin.f64 th) ky)
0.2b
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))
0.4b
(*.f64 1/6 (*.f64 (sin.f64 th) ky))
Compiler

Compiled 29 to 12 computations (58.6% saved)

series10.0ms (0%)

Counts
3 → 32
Calls

18 calls:

TimeVariablePointExpression
1.0ms
th
@inf
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))
1.0ms
ky
@-inf
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))
1.0ms
ky
@inf
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))
1.0ms
th
@0
(*.f64 1/6 (*.f64 (sin.f64 th) ky))
1.0ms
th
@0
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))

rewrite62.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
872×pow1_binary64
801×add-log-exp_binary64
801×log1p-expm1-u_binary64
801×expm1-log1p-u_binary64
785×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0929
118129
2215729
Stop Event
node limit
Counts
3 → 37
Calls
Call 1
Inputs
(*.f64 1/6 (*.f64 (sin.f64 th) ky))
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 th) ky)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 1/6 (*.f64 (sin.f64 th) ky))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 1/6) (*.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 1/6 (*.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/6 (*.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 1/6 (*.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 1/6 (*.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 1/6 (*.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 1/6) (*.f64 (sin.f64 th) ky)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 1/6 (*.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/6 (*.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/6 (*.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/6 (*.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (sin.f64 th) ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 th) ky) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 th) ky)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 th) ky)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 ky) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 ky 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 ky 3) (pow.f64 (sin.f64 th) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 th) ky)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 th) ky)))))))

simplify149.0ms (0.5%)

Algorithm
egg-herbie
Rules
747×distribute-rgt-in_binary64
606×fma-def_binary64
595×distribute-lft-out_binary64
439×sqr-pow_binary64
359×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
082646
1242640
2715580
32632556
44140556
55669556
65796556
75988556
86201556
96468556
106833556
Stop Event
node limit
Counts
69 → 71
Calls
Call 1
Inputs
(*.f64 1/6 (*.f64 th ky))
(+.f64 (*.f64 -1/36 (*.f64 (pow.f64 th 3) ky)) (*.f64 1/6 (*.f64 th ky)))
(+.f64 (*.f64 -1/36 (*.f64 (pow.f64 th 3) ky)) (+.f64 (*.f64 1/6 (*.f64 th ky)) (*.f64 1/720 (*.f64 (pow.f64 th 5) ky))))
(+.f64 (*.f64 -1/36 (*.f64 (pow.f64 th 3) ky)) (+.f64 (*.f64 1/6 (*.f64 th ky)) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 th 5) ky)) (*.f64 -1/30240 (*.f64 (pow.f64 th 7) ky)))))
(*.f64 1/6 (*.f64 (sin.f64 th) (pow.f64 ky 2)))
(+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (pow.f64 ky 4))) (*.f64 1/6 (*.f64 (sin.f64 th) (pow.f64 ky 2))))
(+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (pow.f64 ky 4))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 th) (pow.f64 ky 6))) (*.f64 1/6 (*.f64 (sin.f64 th) (pow.f64 ky 2)))))
(+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (pow.f64 ky 4))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 th) (pow.f64 ky 6))) (+.f64 (*.f64 -1/30240 (*.f64 (sin.f64 th) (pow.f64 ky 8))) (*.f64 1/6 (*.f64 (sin.f64 th) (pow.f64 ky 2))))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 ky th)))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 ky th))) (*.f64 -1/36 (*.f64 (sin.f64 ky) (*.f64 ky (pow.f64 th 3)))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 ky th))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 ky) (*.f64 ky (pow.f64 th 5)))) (*.f64 -1/36 (*.f64 (sin.f64 ky) (*.f64 ky (pow.f64 th 3))))))
(+.f64 (*.f64 -1/30240 (*.f64 (sin.f64 ky) (*.f64 ky (pow.f64 th 7)))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 ky th))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 ky) (*.f64 ky (pow.f64 th 5)))) (*.f64 -1/36 (*.f64 (sin.f64 ky) (*.f64 ky (pow.f64 th 3)))))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 ky th)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) ky)) (*.f64 ky th))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) ky)) (+.f64 (*.f64 ky th) (*.f64 1/120 (*.f64 (pow.f64 th 5) ky))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) ky)) (+.f64 (*.f64 ky th) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 th 7) ky)) (*.f64 1/120 (*.f64 (pow.f64 th 5) ky)))))
Outputs
(*.f64 1/6 (*.f64 th ky))
(*.f64 th (*.f64 ky 1/6))
(*.f64 th (*.f64 1/6 ky))
(*.f64 ky (*.f64 1/6 th))
(+.f64 (*.f64 -1/36 (*.f64 (pow.f64 th 3) ky)) (*.f64 1/6 (*.f64 th ky)))
(fma.f64 -1/36 (*.f64 ky (pow.f64 th 3)) (*.f64 1/6 (*.f64 th ky)))
(*.f64 ky (+.f64 (*.f64 1/6 th) (*.f64 -1/36 (pow.f64 th 3))))
(*.f64 ky (fma.f64 1/6 th (*.f64 -1/36 (pow.f64 th 3))))
(+.f64 (*.f64 -1/36 (*.f64 (pow.f64 th 3) ky)) (+.f64 (*.f64 1/6 (*.f64 th ky)) (*.f64 1/720 (*.f64 (pow.f64 th 5) ky))))
(fma.f64 -1/36 (*.f64 ky (pow.f64 th 3)) (fma.f64 1/6 (*.f64 th ky) (*.f64 (*.f64 1/720 (pow.f64 th 5)) ky)))
(fma.f64 -1/36 (*.f64 ky (pow.f64 th 3)) (*.f64 ky (+.f64 (*.f64 1/6 th) (*.f64 1/720 (pow.f64 th 5)))))
(*.f64 ky (+.f64 (*.f64 -1/36 (pow.f64 th 3)) (fma.f64 1/6 th (*.f64 1/720 (pow.f64 th 5)))))
(*.f64 ky (+.f64 (*.f64 1/720 (pow.f64 th 5)) (fma.f64 1/6 th (*.f64 -1/36 (pow.f64 th 3)))))
(+.f64 (*.f64 -1/36 (*.f64 (pow.f64 th 3) ky)) (+.f64 (*.f64 1/6 (*.f64 th ky)) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 th 5) ky)) (*.f64 -1/30240 (*.f64 (pow.f64 th 7) ky)))))
(fma.f64 -1/36 (*.f64 ky (pow.f64 th 3)) (fma.f64 1/6 (*.f64 th ky) (fma.f64 1/720 (*.f64 ky (pow.f64 th 5)) (*.f64 -1/30240 (*.f64 ky (pow.f64 th 7))))))
(fma.f64 -1/36 (*.f64 ky (pow.f64 th 3)) (fma.f64 1/6 (*.f64 th ky) (*.f64 ky (+.f64 (*.f64 1/720 (pow.f64 th 5)) (*.f64 -1/30240 (pow.f64 th 7))))))
(*.f64 ky (+.f64 (fma.f64 1/6 th (*.f64 -1/36 (pow.f64 th 3))) (fma.f64 1/720 (pow.f64 th 5) (*.f64 -1/30240 (pow.f64 th 7)))))
(*.f64 1/6 (*.f64 (sin.f64 th) (pow.f64 ky 2)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky ky)))
(*.f64 1/6 (*.f64 ky (*.f64 ky (sin.f64 th))))
(*.f64 ky (*.f64 ky (*.f64 1/6 (sin.f64 th))))
(*.f64 (*.f64 ky ky) (*.f64 1/6 (sin.f64 th)))
(+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (pow.f64 ky 4))) (*.f64 1/6 (*.f64 (sin.f64 th) (pow.f64 ky 2))))
(fma.f64 -1/36 (*.f64 (sin.f64 th) (pow.f64 ky 4)) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky ky))))
(fma.f64 1/6 (*.f64 ky (*.f64 ky (sin.f64 th))) (*.f64 -1/36 (*.f64 (sin.f64 th) (pow.f64 ky 4))))
(*.f64 (sin.f64 th) (+.f64 (*.f64 ky (*.f64 1/6 ky)) (*.f64 -1/36 (pow.f64 ky 4))))
(*.f64 (sin.f64 th) (*.f64 ky (+.f64 (*.f64 1/6 ky) (*.f64 -1/36 (pow.f64 ky 3)))))
(+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (pow.f64 ky 4))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 th) (pow.f64 ky 6))) (*.f64 1/6 (*.f64 (sin.f64 th) (pow.f64 ky 2)))))
(fma.f64 -1/36 (*.f64 (sin.f64 th) (pow.f64 ky 4)) (fma.f64 1/720 (*.f64 (sin.f64 th) (pow.f64 ky 6)) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky ky)))))
(fma.f64 -1/36 (*.f64 (sin.f64 th) (pow.f64 ky 4)) (fma.f64 1/6 (*.f64 ky (*.f64 ky (sin.f64 th))) (*.f64 1/720 (*.f64 (sin.f64 th) (pow.f64 ky 6)))))
(fma.f64 1/6 (*.f64 ky (*.f64 ky (sin.f64 th))) (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/36 (pow.f64 ky 4)) (*.f64 1/720 (pow.f64 ky 6)))))
(*.f64 (sin.f64 th) (+.f64 (+.f64 (*.f64 1/720 (pow.f64 ky 6)) (*.f64 ky (*.f64 1/6 ky))) (*.f64 -1/36 (pow.f64 ky 4))))
(*.f64 (sin.f64 th) (+.f64 (*.f64 1/720 (pow.f64 ky 6)) (+.f64 (*.f64 ky (*.f64 1/6 ky)) (*.f64 -1/36 (pow.f64 ky 4)))))
(*.f64 (sin.f64 th) (+.f64 (*.f64 1/720 (pow.f64 ky 6)) (*.f64 ky (+.f64 (*.f64 1/6 ky) (*.f64 -1/36 (pow.f64 ky 3))))))
(+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (pow.f64 ky 4))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 th) (pow.f64 ky 6))) (+.f64 (*.f64 -1/30240 (*.f64 (sin.f64 th) (pow.f64 ky 8))) (*.f64 1/6 (*.f64 (sin.f64 th) (pow.f64 ky 2))))))
(fma.f64 -1/36 (*.f64 (sin.f64 th) (pow.f64 ky 4)) (fma.f64 1/720 (*.f64 (sin.f64 th) (pow.f64 ky 6)) (fma.f64 -1/30240 (*.f64 (sin.f64 th) (pow.f64 ky 8)) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky ky))))))
(fma.f64 -1/36 (*.f64 (sin.f64 th) (pow.f64 ky 4)) (fma.f64 1/720 (*.f64 (sin.f64 th) (pow.f64 ky 6)) (fma.f64 1/6 (*.f64 ky (*.f64 ky (sin.f64 th))) (*.f64 -1/30240 (*.f64 (sin.f64 th) (pow.f64 ky 8))))))
(+.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 ky (*.f64 1/6 ky)) (*.f64 -1/36 (pow.f64 ky 4)))) (*.f64 (sin.f64 th) (+.f64 (*.f64 1/720 (pow.f64 ky 6)) (*.f64 -1/30240 (pow.f64 ky 8)))))
(*.f64 (sin.f64 th) (+.f64 (+.f64 (*.f64 ky (*.f64 1/6 ky)) (*.f64 -1/36 (pow.f64 ky 4))) (+.f64 (*.f64 -1/30240 (pow.f64 ky 8)) (*.f64 1/720 (pow.f64 ky 6)))))
(*.f64 (sin.f64 th) (+.f64 (*.f64 -1/36 (pow.f64 ky 4)) (+.f64 (*.f64 -1/30240 (pow.f64 ky 8)) (+.f64 (*.f64 1/720 (pow.f64 ky 6)) (*.f64 ky (*.f64 1/6 ky))))))
(*.f64 (sin.f64 th) (+.f64 (*.f64 -1/30240 (pow.f64 ky 8)) (+.f64 (*.f64 1/720 (pow.f64 ky 6)) (*.f64 ky (+.f64 (*.f64 1/6 ky) (*.f64 -1/36 (pow.f64 ky 3)))))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 ky th)))
(*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th ky)))
(*.f64 1/6 (*.f64 th (*.f64 ky (sin.f64 ky))))
(*.f64 th (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 th (*.f64 1/6 (*.f64 ky (sin.f64 ky))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 ky th))) (*.f64 -1/36 (*.f64 (sin.f64 ky) (*.f64 ky (pow.f64 th 3)))))
(fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th ky)) (*.f64 -1/36 (*.f64 (*.f64 ky (pow.f64 th 3)) (sin.f64 ky))))
(fma.f64 1/6 (*.f64 th (*.f64 ky (sin.f64 ky))) (*.f64 -1/36 (*.f64 (pow.f64 th 3) (*.f64 ky (sin.f64 ky)))))
(*.f64 (sin.f64 ky) (*.f64 ky (fma.f64 1/6 th (*.f64 -1/36 (pow.f64 th 3)))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 ky th))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 ky) (*.f64 ky (pow.f64 th 5)))) (*.f64 -1/36 (*.f64 (sin.f64 ky) (*.f64 ky (pow.f64 th 3))))))
(fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th ky)) (fma.f64 1/720 (*.f64 (*.f64 ky (pow.f64 th 5)) (sin.f64 ky)) (*.f64 -1/36 (*.f64 (*.f64 ky (pow.f64 th 3)) (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 th (*.f64 ky (sin.f64 ky))) (fma.f64 -1/36 (*.f64 (pow.f64 th 3) (*.f64 ky (sin.f64 ky))) (*.f64 1/720 (*.f64 ky (*.f64 (pow.f64 th 5) (sin.f64 ky))))))
(fma.f64 -1/36 (*.f64 ky (*.f64 (pow.f64 th 3) (sin.f64 ky))) (*.f64 (sin.f64 ky) (*.f64 ky (fma.f64 1/6 th (*.f64 1/720 (pow.f64 th 5))))))
(*.f64 (sin.f64 ky) (*.f64 ky (+.f64 (*.f64 1/720 (pow.f64 th 5)) (fma.f64 1/6 th (*.f64 -1/36 (pow.f64 th 3))))))
(+.f64 (*.f64 -1/30240 (*.f64 (sin.f64 ky) (*.f64 ky (pow.f64 th 7)))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 ky th))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 ky) (*.f64 ky (pow.f64 th 5)))) (*.f64 -1/36 (*.f64 (sin.f64 ky) (*.f64 ky (pow.f64 th 3)))))))
(fma.f64 -1/30240 (*.f64 (*.f64 ky (pow.f64 th 7)) (sin.f64 ky)) (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th ky)) (fma.f64 1/720 (*.f64 (*.f64 ky (pow.f64 th 5)) (sin.f64 ky)) (*.f64 -1/36 (*.f64 (*.f64 ky (pow.f64 th 3)) (sin.f64 ky))))))
(fma.f64 -1/30240 (*.f64 ky (*.f64 (pow.f64 th 7) (sin.f64 ky))) (fma.f64 1/6 (*.f64 th (*.f64 ky (sin.f64 ky))) (fma.f64 -1/36 (*.f64 (pow.f64 th 3) (*.f64 ky (sin.f64 ky))) (*.f64 1/720 (*.f64 ky (*.f64 (pow.f64 th 5) (sin.f64 ky)))))))
(+.f64 (*.f64 (sin.f64 ky) (*.f64 ky (fma.f64 1/6 th (*.f64 1/720 (pow.f64 th 5))))) (*.f64 (*.f64 ky (sin.f64 ky)) (+.f64 (*.f64 -1/36 (pow.f64 th 3)) (*.f64 -1/30240 (pow.f64 th 7)))))
(*.f64 (sin.f64 ky) (*.f64 ky (+.f64 (fma.f64 1/6 th (*.f64 -1/36 (pow.f64 th 3))) (fma.f64 1/720 (pow.f64 th 5) (*.f64 -1/30240 (pow.f64 th 7))))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 ky (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (*.f64 1/6 ky)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (*.f64 1/6 ky)))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 ky th)
(*.f64 th ky)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) ky)) (*.f64 ky th))
(fma.f64 -1/6 (*.f64 ky (pow.f64 th 3)) (*.f64 th ky))
(*.f64 ky (+.f64 th (*.f64 (pow.f64 th 3) -1/6)))
(*.f64 ky (fma.f64 (pow.f64 th 3) -1/6 th))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) ky)) (+.f64 (*.f64 ky th) (*.f64 1/120 (*.f64 (pow.f64 th 5) ky))))
(fma.f64 -1/6 (*.f64 ky (pow.f64 th 3)) (fma.f64 ky th (*.f64 (*.f64 ky (pow.f64 th 5)) 1/120)))
(fma.f64 (*.f64 ky (pow.f64 th 3)) -1/6 (*.f64 ky (+.f64 th (*.f64 (pow.f64 th 5) 1/120))))
(*.f64 ky (+.f64 (*.f64 (pow.f64 th 5) 1/120) (fma.f64 (pow.f64 th 3) -1/6 th)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) ky)) (+.f64 (*.f64 ky th) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 th 7) ky)) (*.f64 1/120 (*.f64 (pow.f64 th 5) ky)))))
(fma.f64 -1/6 (*.f64 ky (pow.f64 th 3)) (fma.f64 ky th (fma.f64 -1/5040 (*.f64 ky (pow.f64 th 7)) (*.f64 (*.f64 ky (pow.f64 th 5)) 1/120))))
(fma.f64 (*.f64 ky (pow.f64 th 3)) -1/6 (fma.f64 th ky (*.f64 ky (+.f64 (*.f64 (pow.f64 th 5) 1/120) (*.f64 (pow.f64 th 7) -1/5040)))))
(*.f64 ky (+.f64 (fma.f64 (pow.f64 th 3) -1/6 th) (fma.f64 (pow.f64 th 5) 1/120 (*.f64 (pow.f64 th 7) -1/5040))))

localize13.0ms (0%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (sin.f64 ky) (sin.f64 th))
0.2b
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th))))
6.3b
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th)))
Compiler

Compiled 33 to 10 computations (69.7% saved)

series4.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
ky
@0
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th)))
1.0ms
th
@-inf
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th)))
1.0ms
th
@inf
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th)))
0.0ms
th
@0
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th)))
0.0ms
ky
@0
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th))))

rewrite59.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
967×pow1_binary64
899×add-log-exp_binary64
898×log1p-expm1-u_binary64
898×expm1-log1p-u_binary64
99×add-sqr-sqrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0929
11929
227179
Stop Event
node limit
Counts
2 → 83
Calls
Call 1
Inputs
(/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (sin.f64 th)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 (/.f64 1 (sin.f64 th)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (/.f64 1 (sin.f64 th)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (sin.f64 th))) (pow.f64 (/.f64 1 (cbrt.f64 (sin.f64 th))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 (cbrt.f64 (sin.f64 th))) 2) (/.f64 1 (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (/.f64 1 (sin.f64 th)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 1 (sin.f64 th))) (sqrt.f64 (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 ky)) (/.f64 1 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (sin.f64 th)) (sin.f64 ky)) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sin.f64 ky)) (/.f64 (cbrt.f64 (sin.f64 ky)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sin.f64 th)) (/.f64 (cbrt.f64 (sin.f64 ky)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2)) (/.f64 (sin.f64 ky) (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2)) (/.f64 1 (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2)) (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) (/.f64 (sin.f64 ky) (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) (/.f64 (cbrt.f64 (sin.f64 ky)) (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 th) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (sin.f64 th)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1 (sin.f64 th)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (sin.f64 th))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 1 (sin.f64 th))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1 (pow.f64 (sin.f64 th) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1 (sin.f64 th)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (sin.f64 th))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 th)) (pow.f64 (cbrt.f64 (sin.f64 th)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (cbrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 th)) (sqrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (/.f64 -1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 ky)) (pow.f64 (/.f64 (/.f64 1 (sin.f64 th)) (sin.f64 ky)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (/.f64 1 (cbrt.f64 (sin.f64 th))) 2) -1) (pow.f64 (/.f64 1 (cbrt.f64 (sin.f64 th))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (/.f64 1 (sin.f64 th))) -1) (pow.f64 (sqrt.f64 (/.f64 1 (sin.f64 th))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) 1) (/.f64 (sin.f64 th) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) 1) (/.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 1) (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (/.f64 (sin.f64 th) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (/.f64 (sin.f64 ky) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (/.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 ky))) (/.f64 (sin.f64 th) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (sqrt.f64 (sin.f64 ky))) (/.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (sin.f64 ky))) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) (sqrt.f64 (sin.f64 ky))) (/.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (sqrt.f64 (sin.f64 ky))) (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (neg.f64 (sin.f64 ky))) (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sin.f64 ky)) 1) (*.f64 (sin.f64 ky) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2)) (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 th) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (sin.f64 th)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 th) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 th)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 th)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 th) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 th) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x sin.f64 th)))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 th)))))))

simplify137.0ms (0.4%)

Algorithm
egg-herbie
Rules
797×fma-def_binary64
675×sqr-pow_binary64
624×unswap-sqr_binary64
530×cube-prod_binary64
436×associate-*l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
033281
182279
2197275
3516275
4983275
52069275
62885275
73854275
84008275
94254275
104569275
115050275
125729275
136623275
147267275
157774275
Stop Event
node limit
Counts
131 → 98
Calls
Call 1
Inputs
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 th)
(+.f64 (/.f64 1 th) (*.f64 1/6 th))
(+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3))))
(+.f64 (*.f64 31/15120 (pow.f64 th 5)) (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
th
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 -1/5040 (pow.f64 th 7)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th)))
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
Outputs
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 th)
(+.f64 (/.f64 1 th) (*.f64 1/6 th))
(+.f64 (/.f64 1 th) (*.f64 th 1/6))
(fma.f64 th 1/6 (/.f64 1 th))
(+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3))))
(+.f64 (/.f64 1 th) (fma.f64 1/6 th (*.f64 7/360 (pow.f64 th 3))))
(+.f64 (/.f64 1 th) (fma.f64 th 1/6 (*.f64 7/360 (pow.f64 th 3))))
(fma.f64 7/360 (pow.f64 th 3) (fma.f64 th 1/6 (/.f64 1 th)))
(fma.f64 th (fma.f64 th (*.f64 th 7/360) 1/6) (/.f64 1 th))
(fma.f64 th (fma.f64 7/360 (*.f64 th th) 1/6) (/.f64 1 th))
(+.f64 (*.f64 31/15120 (pow.f64 th 5)) (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
(fma.f64 31/15120 (pow.f64 th 5) (+.f64 (/.f64 1 th) (fma.f64 1/6 th (*.f64 7/360 (pow.f64 th 3)))))
(+.f64 (fma.f64 th 1/6 (*.f64 7/360 (pow.f64 th 3))) (fma.f64 31/15120 (pow.f64 th 5) (/.f64 1 th)))
(fma.f64 31/15120 (pow.f64 th 5) (fma.f64 7/360 (pow.f64 th 3) (fma.f64 th 1/6 (/.f64 1 th))))
(fma.f64 th (fma.f64 th (*.f64 th 7/360) 1/6) (fma.f64 31/15120 (pow.f64 th 5) (/.f64 1 th)))
(fma.f64 th 1/6 (fma.f64 7/360 (pow.f64 th 3) (fma.f64 31/15120 (pow.f64 th 5) (/.f64 1 th))))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(/.f64 1 (sin.f64 th))
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
th
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(fma.f64 -1/6 (pow.f64 th 3) th)
(fma.f64 (pow.f64 th 3) -1/6 th)
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th))
(fma.f64 -1/6 (pow.f64 th 3) (fma.f64 1/120 (pow.f64 th 5) th))
(fma.f64 (pow.f64 th 3) -1/6 (fma.f64 (pow.f64 th 5) 1/120 th))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) (+.f64 (*.f64 -1/5040 (pow.f64 th 7)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th)))
(fma.f64 -1/6 (pow.f64 th 3) (fma.f64 -1/5040 (pow.f64 th 7) (fma.f64 1/120 (pow.f64 th 5) th)))
(fma.f64 (pow.f64 th 3) -1/6 (fma.f64 -1/5040 (pow.f64 th 7) (fma.f64 (pow.f64 th 5) 1/120 th)))
(fma.f64 (pow.f64 th 3) -1/6 (fma.f64 (pow.f64 th 5) 1/120 (fma.f64 -1/5040 (pow.f64 th 7) th)))
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)
(sin.f64 th)

localize27.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1)
0.3b
(pow.f64 (sin.f64 ky) 2)
1.7b
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
4.4b
(/.f64 kx (pow.f64 (sin.f64 ky) 2))
Compiler

Compiled 56 to 32 computations (42.9% saved)

series14.0ms (0%)

Counts
3 → 52
Calls

18 calls:

TimeVariablePointExpression
4.0ms
ky
@0
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
1.0ms
kx
@inf
(/.f64 kx (pow.f64 (sin.f64 ky) 2))
1.0ms
ky
@inf
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
1.0ms
ky
@0
(/.f64 kx (pow.f64 (sin.f64 ky) 2))
1.0ms
kx
@inf
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)

rewrite67.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
469×log-prod_binary64
370×exp-prod_binary64
293×cbrt-unprod_binary64
289×prod-exp_binary64
262×pow2_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01137
122331
2254331
Stop Event
node limit
Counts
3 → 115
Calls
Call 1
Inputs
(/.f64 kx (pow.f64 (sin.f64 ky) 2))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx)
(fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 kx (pow.f64 (sin.f64 ky) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 2) (*.f64 kx (pow.f64 (sin.f64 ky) -2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 kx) (pow.f64 (sin.f64 ky) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 kx) (pow.f64 (sin.f64 ky) -2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 kx) (pow.f64 (sin.f64 ky) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 kx (pow.f64 (sin.f64 ky) -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 kx (pow.f64 (sin.f64 ky) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 kx (pow.f64 (sin.f64 ky) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 kx (pow.f64 (sin.f64 ky) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 kx) 2) (*.f64 (cbrt.f64 kx) (pow.f64 (sin.f64 ky) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 kx (pow.f64 (sin.f64 ky) -2))) (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 kx) (sin.f64 ky)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 kx) (sin.f64 ky)) 4)) (cbrt.f64 (*.f64 kx (pow.f64 (sin.f64 ky) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 kx) (*.f64 (sqrt.f64 kx) (pow.f64 (sin.f64 ky) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 kx) (sin.f64 ky)) (/.f64 (sqrt.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 kx) (/.f64 1 (neg.f64 (pow.f64 (sin.f64 ky) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 ky) -2) kx)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 ky)) (/.f64 kx (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 kx) 2) (sin.f64 ky)) (/.f64 (cbrt.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 kx) 2) 1) (/.f64 (cbrt.f64 kx) (pow.f64 (sin.f64 ky) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 kx) 1) (/.f64 (sqrt.f64 kx) (pow.f64 (sin.f64 ky) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (sin.f64 ky)) 4)) (/.f64 kx (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 kx) (pow.f64 (cbrt.f64 (sin.f64 ky)) 4)) (/.f64 (sqrt.f64 kx) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 kx (pow.f64 (sin.f64 ky) -2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (*.f64 kx (pow.f64 (sin.f64 ky) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 kx) (sin.f64 ky)) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 kx) (sin.f64 ky)) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 kx (pow.f64 (sin.f64 ky) -2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 kx) (sin.f64 ky)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) kx) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 kx 3) (pow.f64 (sin.f64 ky) 6)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) kx) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (cbrt.f64 (pow.f64 (log.f64 (*.f64 kx (pow.f64 (sin.f64 ky) -2))) 2))) (cbrt.f64 (log.f64 (*.f64 kx (pow.f64 (sin.f64 ky) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 kx (pow.f64 (sin.f64 ky) -2))))) (sqrt.f64 (log.f64 (*.f64 kx (pow.f64 (sin.f64 ky) -2)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 kx (neg.f64 (pow.f64 (sin.f64 ky) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sqrt.f64 kx) (sin.f64 ky)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 kx) (pow.f64 (sin.f64 ky) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 kx) (sin.f64 ky)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 kx 3) (pow.f64 (sin.f64 ky) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (neg.f64 kx) 3) (pow.f64 (neg.f64 (pow.f64 (sin.f64 ky) 2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 kx 3) (pow.f64 (pow.f64 (sin.f64 ky) -2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 ky) -2) 3) (pow.f64 kx 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 kx (pow.f64 (sin.f64 ky) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 kx (pow.f64 (sin.f64 ky) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 kx (pow.f64 (sin.f64 ky) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sqrt.f64 kx) (sin.f64 ky)) 6)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 kx (pow.f64 (sin.f64 ky) -2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 kx) (sin.f64 ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) -1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (/.f64 kx (sin.f64 ky)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (/.f64 kx (sin.f64 ky)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 kx kx)) (neg.f64 (pow.f64 (sin.f64 ky) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 kx) kx) (neg.f64 (pow.f64 (sin.f64 ky) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 kx (neg.f64 kx)) (neg.f64 (pow.f64 (sin.f64 ky) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 kx kx) 1) (pow.f64 (sin.f64 ky) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 kx kx) (pow.f64 (cbrt.f64 (sin.f64 ky)) 4)) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (*.f64 2 (log.f64 (/.f64 kx (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (/.f64 kx (sin.f64 ky))) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 kx (sin.f64 ky)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (*.f64 2 (log.f64 (/.f64 kx (sin.f64 ky))))) 2)) (cbrt.f64 (*.f64 2 (log.f64 (/.f64 kx (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (*.f64 2 (log.f64 (/.f64 kx (sin.f64 ky)))))) (sqrt.f64 (*.f64 2 (log.f64 (/.f64 kx (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 kx 3) (pow.f64 (/.f64 (pow.f64 (sin.f64 ky) 2) kx) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 kx 3) (/.f64 (pow.f64 (sin.f64 ky) 6) (pow.f64 kx 3))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 kx 6) (pow.f64 (sin.f64 ky) 6)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 kx 3) (/.f64 (pow.f64 kx 3) (pow.f64 (sin.f64 ky) 6))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (/.f64 (pow.f64 kx 3) (pow.f64 (sin.f64 ky) 6)) (pow.f64 kx 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 kx 6) (pow.f64 (pow.f64 (sin.f64 ky) -2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (/.f64 kx (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 6)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (cbrt.f64 (/.f64 kx (sin.f64 ky))) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 kx (sin.f64 ky))) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)) 2))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)) (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)) 2) (cbrt.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)) (sqrt.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 3) 1) (+.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 2) (-.f64 1 (*.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 2) 1) (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log1p.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log1p.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2))) 2)) (cbrt.f64 (log1p.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log1p.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2)))) (sqrt.f64 (log1p.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log1p.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log1p.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/3 (log1p.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/2 (log1p.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2))) 2))))))

simplify56.0ms (0.2%)

Algorithm
egg-herbie
Rules
620×fma-neg_binary64
578×fma-def_binary64
449×distribute-rgt-neg-in_binary64
440×distribute-lft-neg-in_binary64
424×distribute-rgt-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
077951
1241885
2923835
34798822
Stop Event
node limit
Counts
167 → 145
Calls
Call 1
Inputs
(/.f64 kx (pow.f64 ky 2))
(+.f64 (/.f64 kx (pow.f64 ky 2)) (*.f64 1/3 kx))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 2) (+.f64 (*.f64 2/45 kx) (*.f64 -1/9 kx)))) (+.f64 (/.f64 kx (pow.f64 ky 2)) (*.f64 1/3 kx)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 2) (+.f64 (*.f64 2/45 kx) (*.f64 -1/9 kx)))) (+.f64 (/.f64 kx (pow.f64 ky 2)) (+.f64 (*.f64 1/3 kx) (*.f64 -1 (*.f64 (pow.f64 ky 4) (+.f64 (*.f64 2/135 kx) (+.f64 (*.f64 1/3 (+.f64 (*.f64 2/45 kx) (*.f64 -1/9 kx))) (*.f64 -1/315 kx))))))))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 ky 2))
(+.f64 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)) (*.f64 1/3 (pow.f64 kx 2)))
(+.f64 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (pow.f64 ky 2))) (*.f64 1/3 (pow.f64 kx 2))))
(+.f64 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/135 (pow.f64 kx 2)) (+.f64 (*.f64 -1/315 (pow.f64 kx 2)) (*.f64 1/3 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2)))))) (pow.f64 ky 4))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (pow.f64 ky 2))) (*.f64 1/3 (pow.f64 kx 2)))))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
1
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2)))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2)))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)))
(+.f64 1 (+.f64 (*.f64 1/6 (pow.f64 kx 2)) (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)))))
(+.f64 1 (+.f64 (*.f64 1/6 (pow.f64 kx 2)) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (pow.f64 ky 2))) (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2))))))
(+.f64 1 (+.f64 (*.f64 1/6 (pow.f64 kx 2)) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (pow.f64 ky 2))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2))) (*.f64 -1/2 (*.f64 (pow.f64 ky 4) (+.f64 (*.f64 2/135 (pow.f64 kx 2)) (+.f64 (*.f64 1/3 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2)))) (*.f64 -1/315 (pow.f64 kx 2))))))))))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
Outputs
(/.f64 kx (pow.f64 ky 2))
(/.f64 kx (*.f64 ky ky))
(+.f64 (/.f64 kx (pow.f64 ky 2)) (*.f64 1/3 kx))
(+.f64 (/.f64 kx (*.f64 ky ky)) (*.f64 kx 1/3))
(fma.f64 kx 1/3 (/.f64 kx (*.f64 ky ky)))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 2) (+.f64 (*.f64 2/45 kx) (*.f64 -1/9 kx)))) (+.f64 (/.f64 kx (pow.f64 ky 2)) (*.f64 1/3 kx)))
(fma.f64 -1 (*.f64 (*.f64 ky ky) (*.f64 kx -1/15)) (+.f64 (/.f64 kx (*.f64 ky ky)) (*.f64 kx 1/3)))
(-.f64 (fma.f64 kx 1/3 (/.f64 kx (*.f64 ky ky))) (*.f64 kx (*.f64 -1/15 (*.f64 ky ky))))
(fma.f64 kx 1/3 (fma.f64 (*.f64 ky ky) (*.f64 kx 1/15) (/.f64 kx (*.f64 ky ky))))
(+.f64 (*.f64 -1 (*.f64 (pow.f64 ky 2) (+.f64 (*.f64 2/45 kx) (*.f64 -1/9 kx)))) (+.f64 (/.f64 kx (pow.f64 ky 2)) (+.f64 (*.f64 1/3 kx) (*.f64 -1 (*.f64 (pow.f64 ky 4) (+.f64 (*.f64 2/135 kx) (+.f64 (*.f64 1/3 (+.f64 (*.f64 2/45 kx) (*.f64 -1/9 kx))) (*.f64 -1/315 kx))))))))
(fma.f64 -1 (*.f64 (*.f64 ky ky) (*.f64 kx -1/15)) (+.f64 (/.f64 kx (*.f64 ky ky)) (fma.f64 1/3 kx (neg.f64 (*.f64 (pow.f64 ky 4) (fma.f64 2/135 kx (fma.f64 1/3 (*.f64 kx -1/15) (*.f64 kx -1/315))))))))
(-.f64 (-.f64 (fma.f64 kx 1/3 (/.f64 kx (*.f64 ky ky))) (*.f64 (pow.f64 ky 4) (fma.f64 kx 2/135 (fma.f64 kx -1/315 (*.f64 kx -1/45))))) (*.f64 kx (*.f64 -1/15 (*.f64 ky ky))))
(-.f64 (fma.f64 kx 1/3 (fma.f64 (*.f64 ky ky) (*.f64 kx 1/15) (/.f64 kx (*.f64 ky ky)))) (*.f64 (pow.f64 ky 4) (fma.f64 kx 2/135 (*.f64 kx -8/315))))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 ky 2))
(/.f64 (*.f64 kx kx) (*.f64 ky ky))
(*.f64 (/.f64 kx ky) (/.f64 kx ky))
(*.f64 (/.f64 kx (*.f64 ky ky)) kx)
(+.f64 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)) (*.f64 1/3 (pow.f64 kx 2)))
(+.f64 (/.f64 (*.f64 kx kx) (*.f64 ky ky)) (*.f64 1/3 (*.f64 kx kx)))
(fma.f64 1/3 (*.f64 kx kx) (*.f64 (/.f64 kx ky) (/.f64 kx ky)))
(fma.f64 kx (*.f64 kx 1/3) (*.f64 (/.f64 kx (*.f64 ky ky)) kx))
(*.f64 kx (fma.f64 kx 1/3 (/.f64 kx (*.f64 ky ky))))
(+.f64 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (pow.f64 ky 2))) (*.f64 1/3 (pow.f64 kx 2))))
(+.f64 (/.f64 (*.f64 kx kx) (*.f64 ky ky)) (fma.f64 -1 (*.f64 (*.f64 ky ky) (*.f64 (*.f64 kx kx) -1/15)) (*.f64 1/3 (*.f64 kx kx))))
(+.f64 (*.f64 (/.f64 kx ky) (/.f64 kx ky)) (-.f64 (*.f64 1/3 (*.f64 kx kx)) (*.f64 (*.f64 ky ky) (*.f64 (*.f64 kx kx) -1/15))))
(fma.f64 (/.f64 kx ky) (/.f64 kx ky) (*.f64 (*.f64 kx kx) (-.f64 1/3 (*.f64 (*.f64 ky ky) -1/15))))
(fma.f64 (/.f64 kx (*.f64 ky ky)) kx (*.f64 (*.f64 kx kx) (-.f64 1/3 (*.f64 (*.f64 ky ky) -1/15))))
(+.f64 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/135 (pow.f64 kx 2)) (+.f64 (*.f64 -1/315 (pow.f64 kx 2)) (*.f64 1/3 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2)))))) (pow.f64 ky 4))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (pow.f64 ky 2))) (*.f64 1/3 (pow.f64 kx 2)))))
(+.f64 (/.f64 (*.f64 kx kx) (*.f64 ky ky)) (fma.f64 -1 (*.f64 (pow.f64 ky 4) (fma.f64 2/135 (*.f64 kx kx) (fma.f64 1/3 (*.f64 (*.f64 kx kx) -1/15) (*.f64 -1/315 (*.f64 kx kx))))) (fma.f64 -1 (*.f64 (*.f64 ky ky) (*.f64 (*.f64 kx kx) -1/15)) (*.f64 1/3 (*.f64 kx kx)))))
(+.f64 (*.f64 (/.f64 kx ky) (/.f64 kx ky)) (-.f64 (-.f64 (*.f64 1/3 (*.f64 kx kx)) (*.f64 (*.f64 ky ky) (*.f64 (*.f64 kx kx) -1/15))) (*.f64 (pow.f64 ky 4) (+.f64 (*.f64 (*.f64 kx kx) -1/45) (*.f64 (*.f64 kx kx) 11/945)))))
(-.f64 (fma.f64 (/.f64 kx ky) (/.f64 kx ky) (*.f64 (*.f64 kx kx) (-.f64 1/3 (*.f64 (*.f64 ky ky) -1/15)))) (*.f64 (pow.f64 ky 4) (*.f64 (*.f64 kx kx) -2/189)))
(fma.f64 (*.f64 kx kx) (-.f64 1/3 (*.f64 (*.f64 ky ky) -1/15)) (fma.f64 (/.f64 kx (*.f64 ky ky)) kx (*.f64 (pow.f64 ky 4) (*.f64 (*.f64 kx kx) 2/189))))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
(/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2))
(/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))
1
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2)))
(/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2))
(*.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2)
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2)))
(/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2))
(*.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2)
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)))
(*.f64 (/.f64 (*.f64 kx kx) (*.f64 ky ky)) 1/2)
(*.f64 (/.f64 1/2 ky) (/.f64 (*.f64 kx kx) ky))
(*.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2)
(+.f64 1 (+.f64 (*.f64 1/6 (pow.f64 kx 2)) (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2)))))
(+.f64 1 (fma.f64 1/6 (*.f64 kx kx) (*.f64 (/.f64 (*.f64 kx kx) (*.f64 ky ky)) 1/2)))
(+.f64 1 (fma.f64 (*.f64 kx kx) 1/6 (*.f64 (/.f64 1/2 ky) (/.f64 (*.f64 kx kx) ky))))
(fma.f64 kx (*.f64 kx 1/6) (fma.f64 (/.f64 1/2 ky) (/.f64 kx (/.f64 ky kx)) 1))
(+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6)))
(+.f64 1 (+.f64 (*.f64 1/6 (pow.f64 kx 2)) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (pow.f64 ky 2))) (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2))))))
(+.f64 1 (fma.f64 1/6 (*.f64 kx kx) (fma.f64 -1/2 (*.f64 (*.f64 ky ky) (*.f64 (*.f64 kx kx) -1/15)) (*.f64 (/.f64 (*.f64 kx kx) (*.f64 ky ky)) 1/2))))
(+.f64 1 (fma.f64 (*.f64 kx kx) 1/6 (fma.f64 (*.f64 (*.f64 (*.f64 kx kx) -1/15) -1/2) (*.f64 ky ky) (*.f64 (/.f64 1/2 ky) (/.f64 (*.f64 kx kx) ky)))))
(+.f64 1 (fma.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2 (fma.f64 (*.f64 ky ky) (*.f64 (*.f64 kx kx) 1/30) (*.f64 (*.f64 kx kx) 1/6))))
(+.f64 1 (fma.f64 (*.f64 ky ky) (*.f64 (*.f64 kx kx) 1/30) (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
(+.f64 1 (+.f64 (*.f64 1/6 (pow.f64 kx 2)) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2))) (pow.f64 ky 2))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 ky 2))) (*.f64 -1/2 (*.f64 (pow.f64 ky 4) (+.f64 (*.f64 2/135 (pow.f64 kx 2)) (+.f64 (*.f64 1/3 (+.f64 (*.f64 2/45 (pow.f64 kx 2)) (*.f64 -1/9 (pow.f64 kx 2)))) (*.f64 -1/315 (pow.f64 kx 2))))))))))
(+.f64 1 (fma.f64 1/6 (*.f64 kx kx) (fma.f64 -1/2 (*.f64 (*.f64 ky ky) (*.f64 (*.f64 kx kx) -1/15)) (fma.f64 1/2 (/.f64 (*.f64 kx kx) (*.f64 ky ky)) (*.f64 (*.f64 -1/2 (pow.f64 ky 4)) (fma.f64 2/135 (*.f64 kx kx) (fma.f64 1/3 (*.f64 (*.f64 kx kx) -1/15) (*.f64 -1/315 (*.f64 kx kx)))))))))
(+.f64 1 (fma.f64 (*.f64 kx kx) 1/6 (fma.f64 (*.f64 (*.f64 ky ky) (*.f64 (*.f64 kx kx) -1/15)) -1/2 (fma.f64 (*.f64 (/.f64 kx ky) (/.f64 kx ky)) 1/2 (*.f64 (*.f64 (pow.f64 ky 4) (+.f64 (*.f64 (*.f64 kx kx) -1/45) (*.f64 (*.f64 kx kx) 11/945))) -1/2)))))
(+.f64 1 (fma.f64 kx (*.f64 kx 1/6) (fma.f64 (*.f64 ky ky) (*.f64 (*.f64 kx kx) 1/30) (fma.f64 (pow.f64 ky 4) (*.f64 -1/2 (*.f64 (*.f64 kx kx) -2/189)) (*.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2)))))
(+.f64 1 (+.f64 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6)) (*.f64 -1/2 (fma.f64 (pow.f64 ky 4) (*.f64 (*.f64 kx kx) -2/189) (*.f64 ky (*.f64 ky (*.f64 kx (*.f64 kx -1/15))))))))
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)
(+.f64 1 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 2))))
(+.f64 1 (/.f64 (*.f64 1/2 (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)))
(fma.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1/2 1)

eval220.0ms (0.7%)

Compiler

Compiled 12711 to 6669 computations (47.5% saved)

prune231.0ms (0.7%)

Pruning

87 alts after pruning (78 fresh and 9 done)

PrunedKeptTotal
New58242624
Fresh143650
Picked101
Done2911
Total59987686
Error
0b
Counts
686 → 87
Alt Table
Click to see full alt table
StatusErrorProgram
56.8b
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
56.2b
(exp.f64 (log.f64 (sin.f64 th)))
49.8b
(*.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))
56.1b
(*.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (/.f64 1 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))
56.2b
(/.f64 1 (/.f64 1 th))
57.3b
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))
58.0b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
58.3b
(pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3)
0.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
49.7b
(/.f64 1 (/.f64 1 (sin.f64 th)))
56.8b
(/.f64 (/.f64 1 (/.f64 2 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))))) (sin.f64 ky))
0.2b
(*.f64 (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th))
49.7b
(expm1.f64 (log1p.f64 (sin.f64 th)))
58.0b
(*.f64 (sin.f64 ky) (*.f64 1/6 (pow.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3) 1/3)))
44.3b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
52.9b
(*.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1) (sin.f64 th))
56.3b
(sqrt.f64 (pow.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 2))
15.5b
(*.f64 (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sin.f64 th))
56.7b
(+.f64 (-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1) th)
57.6b
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky)))
58.2b
(*.f64 (sin.f64 th) (*.f64 ky (+.f64 (*.f64 1/6 ky) (*.f64 -1/36 (pow.f64 ky 3)))))
48.1b
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
49.7b
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
56.1b
th
58.3b
(*.f64 -1/6 (pow.f64 th 3))
57.6b
(*.f64 (sin.f64 ky) (*.f64 1/6 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 th) ky)))))
58.2b
(sqrt.f64 (*.f64 (pow.f64 th 6) 1/36))
56.9b
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
58.4b
(log.f64 (pow.f64 (exp.f64 -1/6) (pow.f64 th 3)))
49.4b
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
0.2b
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
56.1b
(/.f64 1 (pow.f64 (sqrt.f64 (/.f64 1 (sin.f64 th))) 2))
46.6b
(/.f64 (sin.f64 th) (+.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1))
57.9b
(*.f64 (*.f64 ky ky) (*.f64 1/6 (sin.f64 th)))
51.2b
(log.f64 (exp.f64 (sin.f64 th)))
50.0b
(/.f64 1 (pow.f64 (/.f64 1 (cbrt.f64 (sin.f64 th))) 3))
48.1b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
0.4b
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))
58.2b
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216))
56.3b
(*.f64 (sin.f64 ky) (exp.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 ky)))))
47.3b
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
57.7b
(*.f64 (sin.f64 ky) (*.f64 1/6 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3))))
47.6b
(/.f64 (sin.f64 th) (fma.f64 1/2 (/.f64 1 (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) 1))
2.7b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))
54.8b
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 th) ky)))
49.4b
(*.f64 (/.f64 1 (/.f64 (sin.f64 kx) ky)) (sin.f64 th))
56.3b
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 ky)))
0.3b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
48.1b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
57.3b
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
48.4b
(*.f64 (/.f64 1 (+.f64 (/.f64 (sin.f64 kx) ky) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky))) (sin.f64 th))
49.7b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
49.9b
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
39.5b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (*.f64 ky ky)))) (sin.f64 th))
57.3b
(*.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky))) 3))
58.7b
(exp.f64 (log.f64 (*.f64 -1/6 (pow.f64 th 3))))
48.4b
(/.f64 (sin.f64 th) (+.f64 (/.f64 (sin.f64 kx) ky) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky)))
46.6b
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (/.f64 kx (sin.f64 ky))) kx) 1))
49.3b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
51.2b
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
56.1b
(/.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
33.6b
(*.f64 (sin.f64 ky) (exp.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
2.8b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
57.4b
(*.f64 (sin.f64 ky) (*.f64 1/6 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 2))))
49.7b
(sin.f64 th)
57.6b
(*.f64 th (*.f64 1/6 (*.f64 ky (sin.f64 ky))))
48.1b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
58.4b
(*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/36 (*.f64 (pow.f64 th 3) ky)) (*.f64 1/6 (*.f64 th ky))))
56.2b
(/.f64 1 (exp.f64 (neg.f64 (log.f64 (sin.f64 th)))))
16.0b
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky))))))) (sin.f64 th))
0.2b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
47.1b
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (sin.f64 th))
0.4b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
54.8b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
55.8b
(/.f64 1 (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
49.5b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
57.3b
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
57.6b
(*.f64 (sin.f64 ky) (*.f64 ky (*.f64 1/6 th)))
47.7b
(/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
56.7b
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
7.5b
(/.f64 (sin.f64 th) (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 3)))
60.3b
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 th ky)))
57.3b
(*.f64 (sin.f64 ky) (*.f64 (*.f64 1/6 ky) (sin.f64 th)))
58.1b
(-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1)
30.8b
(pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2)
55.7b
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
58.3b
(/.f64 (sin.f64 th) (*.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2))
Compiler

Compiled 1173 to 889 computations (24.2% saved)

regimes1.2s (3.7%)

Counts
133 → 1
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(sin.f64 th)
(*.f64 -1/6 (pow.f64 th 3))
(/.f64 1 (/.f64 1 (sin.f64 th)))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky)))
(*.f64 (*.f64 ky ky) (*.f64 1/6 (sin.f64 th)))
(*.f64 th (*.f64 1/6 (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 ky (*.f64 1/6 th)))
(-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1)
(+.f64 (-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1) th)
(/.f64 (sin.f64 th) (*.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))
(/.f64 1 (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
(/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
(pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3)
(sqrt.f64 (*.f64 (pow.f64 th 6) 1/36))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 ky)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 1 (/.f64 (sin.f64 kx) ky)) (sin.f64 th))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (sin.f64 ky) (*.f64 (*.f64 1/6 ky) (sin.f64 th)))
(*.f64 (*.f64 1/6 ky) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 th (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (sin.f64 th) (*.f64 ky (+.f64 (*.f64 1/6 ky) (*.f64 -1/36 (pow.f64 ky 3)))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/36 (*.f64 (pow.f64 th 3) ky)) (*.f64 1/6 (*.f64 th ky))))
(/.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (/.f64 1 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))
(exp.f64 (log.f64 (sin.f64 th)))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
(exp.f64 (log.f64 (*.f64 -1/6 (pow.f64 th 3))))
(/.f64 1 (exp.f64 (neg.f64 (log.f64 (sin.f64 th)))))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 1 (pow.f64 (sqrt.f64 (/.f64 1 (sin.f64 th))) 2))
(/.f64 1 (pow.f64 (/.f64 1 (cbrt.f64 (sin.f64 th))) 3))
(*.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)))
(/.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 ky) (sin.f64 th))) 1) (sin.f64 ky))
(-.f64 (+.f64 1 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 1)
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 th ky)))
(*.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 th) (sin.f64 ky))) 1))
(-.f64 (+.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))) 1)
(/.f64 (sin.f64 th) (+.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1))
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)))
(/.f64 (/.f64 1 (/.f64 2 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))))) (sin.f64 ky))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (sin.f64 th))
(log.f64 (pow.f64 (exp.f64 -1/6) (pow.f64 th 3)))
(exp.f64 (log.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))
(sqrt.f64 (pow.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 2))
(pow.f64 (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) 3)
(*.f64 (sin.f64 ky) (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 th)) -1))
(*.f64 (sin.f64 ky) (*.f64 1/6 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 th) ky)))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3))))
(*.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky))) 3))
(*.f64 (sin.f64 ky) (*.f64 1/6 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 2))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (pow.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3) 1/3)))
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky)))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
(/.f64 (sin.f64 th) (fma.f64 1/2 (/.f64 1 (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) 1))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky))) (/.f64 th (sin.f64 ky))))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (/.f64 kx (sin.f64 ky))) kx) 1))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (*.f64 ky ky)))) (sin.f64 th))
(/.f64 (sin.f64 th) (+.f64 (/.f64 (sin.f64 kx) ky) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky)))
(*.f64 (/.f64 1 (+.f64 (/.f64 (sin.f64 kx) ky) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky))) (sin.f64 th))
(exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))))
(*.f64 (sin.f64 ky) (exp.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 ky)))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))
(*.f64 (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)) (sin.f64 th))
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (*.f64 (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)) (sin.f64 th))
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky))))))) (sin.f64 th))
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) -1) (sin.f64 th))
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) -1) (sin.f64 th))
(*.f64 (sin.f64 ky) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) -1))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (exp.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
(*.f64 (sin.f64 ky) (exp.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
(*.f64 (/.f64 (sin.f64 ky) (log.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (sin.f64 th))
(/.f64 (sin.f64 th) (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) 3)))
(*.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))
(pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2)
(*.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 2)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
(*.f64 (*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sin.f64 th))
(*.f64 (*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) 1) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Calls

11 calls:

147.0ms
kx
143.0ms
(sin.f64 th)
127.0ms
(sin.f64 ky)
105.0ms
(sin.f64 kx)
100.0ms
(pow.f64 (sin.f64 kx) 2)
Results
ErrorSegmentsBranch
0.2b1kx
0.2b1ky
0.2b1th
0.2b1(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
0.2b1(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
0.2b1(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))
0.2b1(sin.f64 ky)
0.2b1(pow.f64 (sin.f64 kx) 2)
0.2b1(pow.f64 (sin.f64 kx) 2)
0.2b1(sin.f64 kx)
0.2b1(sin.f64 th)
Compiler

Compiled 1528 to 696 computations (54.5% saved)

regimes610.0ms (1.9%)

Counts
105 → 1
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(sin.f64 th)
(*.f64 -1/6 (pow.f64 th 3))
(/.f64 1 (/.f64 1 (sin.f64 th)))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky)))
(*.f64 (*.f64 ky ky) (*.f64 1/6 (sin.f64 th)))
(*.f64 th (*.f64 1/6 (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 ky (*.f64 1/6 th)))
(-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1)
(+.f64 (-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1) th)
(/.f64 (sin.f64 th) (*.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))
(/.f64 1 (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
(/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
(pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3)
(sqrt.f64 (*.f64 (pow.f64 th 6) 1/36))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 ky)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 1 (/.f64 (sin.f64 kx) ky)) (sin.f64 th))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (sin.f64 ky) (*.f64 (*.f64 1/6 ky) (sin.f64 th)))
(*.f64 (*.f64 1/6 ky) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 th (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (sin.f64 th) (*.f64 ky (+.f64 (*.f64 1/6 ky) (*.f64 -1/36 (pow.f64 ky 3)))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/36 (*.f64 (pow.f64 th 3) ky)) (*.f64 1/6 (*.f64 th ky))))
(/.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (/.f64 1 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))
(exp.f64 (log.f64 (sin.f64 th)))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
(exp.f64 (log.f64 (*.f64 -1/6 (pow.f64 th 3))))
(/.f64 1 (exp.f64 (neg.f64 (log.f64 (sin.f64 th)))))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 1 (pow.f64 (sqrt.f64 (/.f64 1 (sin.f64 th))) 2))
(/.f64 1 (pow.f64 (/.f64 1 (cbrt.f64 (sin.f64 th))) 3))
(*.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)))
(/.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 ky) (sin.f64 th))) 1) (sin.f64 ky))
(-.f64 (+.f64 1 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 1)
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 th ky)))
(*.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 th) (sin.f64 ky))) 1))
(-.f64 (+.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))) 1)
(/.f64 (sin.f64 th) (+.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1))
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)))
(/.f64 (/.f64 1 (/.f64 2 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))))) (sin.f64 ky))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (sin.f64 th))
(log.f64 (pow.f64 (exp.f64 -1/6) (pow.f64 th 3)))
(exp.f64 (log.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))
(sqrt.f64 (pow.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 2))
(pow.f64 (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) 3)
(*.f64 (sin.f64 ky) (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 th)) -1))
(*.f64 (sin.f64 ky) (*.f64 1/6 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 th) ky)))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3))))
(*.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky))) 3))
(*.f64 (sin.f64 ky) (*.f64 1/6 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 2))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (pow.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3) 1/3)))
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky)))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
(/.f64 (sin.f64 th) (fma.f64 1/2 (/.f64 1 (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) 1))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky))) (/.f64 th (sin.f64 ky))))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (/.f64 kx (sin.f64 ky))) kx) 1))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (*.f64 ky ky)))) (sin.f64 th))
(/.f64 (sin.f64 th) (+.f64 (/.f64 (sin.f64 kx) ky) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky)))
(*.f64 (/.f64 1 (+.f64 (/.f64 (sin.f64 kx) ky) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky))) (sin.f64 th))
(exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))))
(*.f64 (sin.f64 ky) (exp.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 ky)))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
Outputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
Calls

6 calls:

121.0ms
th
112.0ms
ky
109.0ms
(sin.f64 th)
80.0ms
(sin.f64 kx)
77.0ms
(sin.f64 ky)
Results
ErrorSegmentsBranch
0.2b1kx
0.2b1ky
0.2b1th
0.2b1(sin.f64 ky)
0.2b1(sin.f64 kx)
0.2b1(sin.f64 th)
Compiler

Compiled 1067 to 530 computations (50.3% saved)

regimes2.3s (7.4%)

Counts
103 → 3
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(sin.f64 th)
(*.f64 -1/6 (pow.f64 th 3))
(/.f64 1 (/.f64 1 (sin.f64 th)))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky)))
(*.f64 (*.f64 ky ky) (*.f64 1/6 (sin.f64 th)))
(*.f64 th (*.f64 1/6 (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 ky (*.f64 1/6 th)))
(-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1)
(+.f64 (-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1) th)
(/.f64 (sin.f64 th) (*.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))
(/.f64 1 (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
(/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
(pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3)
(sqrt.f64 (*.f64 (pow.f64 th 6) 1/36))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 ky)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 1 (/.f64 (sin.f64 kx) ky)) (sin.f64 th))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (sin.f64 ky) (*.f64 (*.f64 1/6 ky) (sin.f64 th)))
(*.f64 (*.f64 1/6 ky) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 th (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (sin.f64 th) (*.f64 ky (+.f64 (*.f64 1/6 ky) (*.f64 -1/36 (pow.f64 ky 3)))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/36 (*.f64 (pow.f64 th 3) ky)) (*.f64 1/6 (*.f64 th ky))))
(/.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (/.f64 1 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))
(exp.f64 (log.f64 (sin.f64 th)))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
(exp.f64 (log.f64 (*.f64 -1/6 (pow.f64 th 3))))
(/.f64 1 (exp.f64 (neg.f64 (log.f64 (sin.f64 th)))))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 1 (pow.f64 (sqrt.f64 (/.f64 1 (sin.f64 th))) 2))
(/.f64 1 (pow.f64 (/.f64 1 (cbrt.f64 (sin.f64 th))) 3))
(*.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)))
(/.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 ky) (sin.f64 th))) 1) (sin.f64 ky))
(-.f64 (+.f64 1 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 1)
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 th ky)))
(*.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 th) (sin.f64 ky))) 1))
(-.f64 (+.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))) 1)
(/.f64 (sin.f64 th) (+.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1))
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)))
(/.f64 (/.f64 1 (/.f64 2 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))))) (sin.f64 ky))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (sin.f64 th))
(log.f64 (pow.f64 (exp.f64 -1/6) (pow.f64 th 3)))
(exp.f64 (log.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))
(sqrt.f64 (pow.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 2))
(pow.f64 (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) 3)
(*.f64 (sin.f64 ky) (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 th)) -1))
(*.f64 (sin.f64 ky) (*.f64 1/6 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 th) ky)))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3))))
(*.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky))) 3))
(*.f64 (sin.f64 ky) (*.f64 1/6 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 2))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (pow.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3) 1/3)))
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky)))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
(/.f64 (sin.f64 th) (fma.f64 1/2 (/.f64 1 (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) 1))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky))) (/.f64 th (sin.f64 ky))))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (/.f64 kx (sin.f64 ky))) kx) 1))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (*.f64 ky ky)))) (sin.f64 th))
(/.f64 (sin.f64 th) (+.f64 (/.f64 (sin.f64 kx) ky) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky)))
(*.f64 (/.f64 1 (+.f64 (/.f64 (sin.f64 kx) ky) (*.f64 (-.f64 (*.f64 1/2 (/.f64 1 (sin.f64 kx))) (*.f64 -1/6 (sin.f64 kx))) ky))) (sin.f64 th))
(exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))))
(*.f64 (sin.f64 ky) (exp.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 ky)))))
Outputs
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (*.f64 ky ky)))) (sin.f64 th))
(sin.f64 th)
Calls

9 calls:

339.0ms
kx
309.0ms
(sin.f64 kx)
261.0ms
(sin.f64 th)
255.0ms
(sin.f64 kx)
252.0ms
(sin.f64 th)
Results
ErrorSegmentsBranch
30.6b4kx
30.7b3ky
38.4b3th
27.4b3(sin.f64 ky)
27.4b3(sin.f64 ky)
30.5b4(sin.f64 kx)
30.5b4(sin.f64 kx)
38.4b3(sin.f64 th)
38.4b3(sin.f64 th)
Compiler

Compiled 1060 to 537 computations (49.3% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.127663083485781e-11
1.2375031174861546e-9
0.0ms
-0.000771961082106785
-6.473984685291137e-5
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes2.7s (8.7%)

Counts
98 → 4
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(sin.f64 th)
(*.f64 -1/6 (pow.f64 th 3))
(/.f64 1 (/.f64 1 (sin.f64 th)))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky)))
(*.f64 (*.f64 ky ky) (*.f64 1/6 (sin.f64 th)))
(*.f64 th (*.f64 1/6 (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 ky (*.f64 1/6 th)))
(-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1)
(+.f64 (-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1) th)
(/.f64 (sin.f64 th) (*.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))
(/.f64 1 (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
(/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
(pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3)
(sqrt.f64 (*.f64 (pow.f64 th 6) 1/36))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 ky)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 1 (/.f64 (sin.f64 kx) ky)) (sin.f64 th))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (sin.f64 ky) (*.f64 (*.f64 1/6 ky) (sin.f64 th)))
(*.f64 (*.f64 1/6 ky) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 th (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (sin.f64 th) (*.f64 ky (+.f64 (*.f64 1/6 ky) (*.f64 -1/36 (pow.f64 ky 3)))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/36 (*.f64 (pow.f64 th 3) ky)) (*.f64 1/6 (*.f64 th ky))))
(/.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (/.f64 1 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))
(exp.f64 (log.f64 (sin.f64 th)))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
(exp.f64 (log.f64 (*.f64 -1/6 (pow.f64 th 3))))
(/.f64 1 (exp.f64 (neg.f64 (log.f64 (sin.f64 th)))))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 1 (pow.f64 (sqrt.f64 (/.f64 1 (sin.f64 th))) 2))
(/.f64 1 (pow.f64 (/.f64 1 (cbrt.f64 (sin.f64 th))) 3))
(*.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)))
(/.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 ky) (sin.f64 th))) 1) (sin.f64 ky))
(-.f64 (+.f64 1 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 1)
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 th ky)))
(*.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 th) (sin.f64 ky))) 1))
(-.f64 (+.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))) 1)
(/.f64 (sin.f64 th) (+.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1))
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)))
(/.f64 (/.f64 1 (/.f64 2 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))))) (sin.f64 ky))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (sin.f64 th))
(log.f64 (pow.f64 (exp.f64 -1/6) (pow.f64 th 3)))
(exp.f64 (log.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))
(sqrt.f64 (pow.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 2))
(pow.f64 (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) 3)
(*.f64 (sin.f64 ky) (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 th)) -1))
(*.f64 (sin.f64 ky) (*.f64 1/6 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 th) ky)))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3))))
(*.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky))) 3))
(*.f64 (sin.f64 ky) (*.f64 1/6 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 2))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (pow.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3) 1/3)))
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky)))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
(/.f64 (sin.f64 th) (fma.f64 1/2 (/.f64 1 (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) 1))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 ky))) (/.f64 th (sin.f64 ky))))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (/.f64 kx (sin.f64 ky))) kx) 1))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(/.f64 (sin.f64 th) (+.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
Calls

7 calls:

788.0ms
th
343.0ms
(sin.f64 th)
341.0ms
kx
336.0ms
(sin.f64 kx)
333.0ms
(sin.f64 kx)
Results
ErrorSegmentsBranch
30.6b4kx
37.0b3ky
39.6b6th
33.4b3(sin.f64 ky)
30.5b4(sin.f64 kx)
30.5b4(sin.f64 kx)
40.8b4(sin.f64 th)
Compiler

Compiled 967 to 492 computations (49.1% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.4566054409865554e-6
0.008680232778494572
0.0ms
-2.262767785757836e-263
-2.6261639464290053e-270
0.0ms
-3.1165402172365696e-8
-5.484948468702742e-12
Compiler

Compiled 25 to 19 computations (24% saved)

regimes2.5s (8%)

Counts
94 → 4
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(sin.f64 th)
(*.f64 -1/6 (pow.f64 th 3))
(/.f64 1 (/.f64 1 (sin.f64 th)))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky)))
(*.f64 (*.f64 ky ky) (*.f64 1/6 (sin.f64 th)))
(*.f64 th (*.f64 1/6 (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 ky (*.f64 1/6 th)))
(-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1)
(+.f64 (-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1) th)
(/.f64 (sin.f64 th) (*.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))
(/.f64 1 (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
(/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
(pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3)
(sqrt.f64 (*.f64 (pow.f64 th 6) 1/36))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 ky)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 1 (/.f64 (sin.f64 kx) ky)) (sin.f64 th))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (sin.f64 ky) (*.f64 (*.f64 1/6 ky) (sin.f64 th)))
(*.f64 (*.f64 1/6 ky) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 th (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (sin.f64 th) (*.f64 ky (+.f64 (*.f64 1/6 ky) (*.f64 -1/36 (pow.f64 ky 3)))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/36 (*.f64 (pow.f64 th 3) ky)) (*.f64 1/6 (*.f64 th ky))))
(/.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (/.f64 1 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))
(exp.f64 (log.f64 (sin.f64 th)))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
(exp.f64 (log.f64 (*.f64 -1/6 (pow.f64 th 3))))
(/.f64 1 (exp.f64 (neg.f64 (log.f64 (sin.f64 th)))))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 1 (pow.f64 (sqrt.f64 (/.f64 1 (sin.f64 th))) 2))
(/.f64 1 (pow.f64 (/.f64 1 (cbrt.f64 (sin.f64 th))) 3))
(*.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)))
(/.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 ky) (sin.f64 th))) 1) (sin.f64 ky))
(-.f64 (+.f64 1 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 1)
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 th ky)))
(*.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 th) (sin.f64 ky))) 1))
(-.f64 (+.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))) 1)
(/.f64 (sin.f64 th) (+.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1))
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)))
(/.f64 (/.f64 1 (/.f64 2 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))))) (sin.f64 ky))
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (sin.f64 th))
(log.f64 (pow.f64 (exp.f64 -1/6) (pow.f64 th 3)))
(exp.f64 (log.f64 (fma.f64 -1/6 (pow.f64 th 3) th)))
(sqrt.f64 (pow.f64 (fma.f64 -1/6 (pow.f64 th 3) th) 2))
(pow.f64 (cbrt.f64 (fma.f64 -1/6 (pow.f64 th 3) th)) 3)
(*.f64 (sin.f64 ky) (pow.f64 (/.f64 (sin.f64 ky) (sin.f64 th)) -1))
(*.f64 (sin.f64 ky) (*.f64 1/6 (expm1.f64 (log1p.f64 (*.f64 (sin.f64 th) ky)))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3))))
(*.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky))) 3))
(*.f64 (sin.f64 ky) (*.f64 1/6 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 2))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (pow.f64 (pow.f64 (*.f64 (sin.f64 th) ky) 3) 1/3)))
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 (sin.f64 th) ky)))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1) (sin.f64 th))
Outputs
(*.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (sin.f64 th))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(/.f64 (sin.f64 th) (+.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
Calls

9 calls:

569.0ms
(sin.f64 th)
487.0ms
(sin.f64 th)
234.0ms
(sin.f64 kx)
234.0ms
(sin.f64 kx)
231.0ms
kx
Results
ErrorSegmentsBranch
33.5b4kx
37.1b3ky
41.9b4th
33.4b3(sin.f64 ky)
33.4b3(sin.f64 ky)
32.3b4(sin.f64 kx)
32.3b4(sin.f64 kx)
40.8b7(sin.f64 th)
40.8b7(sin.f64 th)
Compiler

Compiled 913 to 466 computations (49% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.4566054409865554e-6
0.008680232778494572
0.0ms
-2.262767785757836e-263
-2.6261639464290053e-270
0.0ms
-3.1165402172365696e-8
-5.484948468702742e-12
Compiler

Compiled 25 to 19 computations (24% saved)

regimes1.8s (5.6%)

Counts
80 → 5
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(sin.f64 th)
(*.f64 -1/6 (pow.f64 th 3))
(/.f64 1 (/.f64 1 (sin.f64 th)))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky)))
(*.f64 (*.f64 ky ky) (*.f64 1/6 (sin.f64 th)))
(*.f64 th (*.f64 1/6 (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 ky (*.f64 1/6 th)))
(-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1)
(+.f64 (-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1) th)
(/.f64 (sin.f64 th) (*.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))
(/.f64 1 (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
(/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
(pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3)
(sqrt.f64 (*.f64 (pow.f64 th 6) 1/36))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 ky)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 1 (/.f64 (sin.f64 kx) ky)) (sin.f64 th))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (sin.f64 ky) (*.f64 (*.f64 1/6 ky) (sin.f64 th)))
(*.f64 (*.f64 1/6 ky) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 th (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (sin.f64 th) (*.f64 ky (+.f64 (*.f64 1/6 ky) (*.f64 -1/36 (pow.f64 ky 3)))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/36 (*.f64 (pow.f64 th 3) ky)) (*.f64 1/6 (*.f64 th ky))))
(/.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (/.f64 1 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))
(exp.f64 (log.f64 (sin.f64 th)))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
(exp.f64 (log.f64 (*.f64 -1/6 (pow.f64 th 3))))
(/.f64 1 (exp.f64 (neg.f64 (log.f64 (sin.f64 th)))))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(/.f64 1 (pow.f64 (sqrt.f64 (/.f64 1 (sin.f64 th))) 2))
(/.f64 1 (pow.f64 (/.f64 1 (cbrt.f64 (sin.f64 th))) 3))
(*.f64 (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) (sin.f64 th)))
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 ky)) (sin.f64 th)))
(/.f64 (-.f64 (+.f64 1 (*.f64 (sin.f64 ky) (sin.f64 th))) 1) (sin.f64 ky))
(-.f64 (+.f64 1 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 ky)) (sin.f64 th))) 1)
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 ky 1/6) (/.f64 th ky)))
(*.f64 (sin.f64 ky) (-.f64 (+.f64 1 (/.f64 (sin.f64 th) (sin.f64 ky))) 1))
(-.f64 (+.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))) 1)
(/.f64 (sin.f64 th) (+.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1))
(/.f64 (*.f64 (sin.f64 th) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (sin.f64 ky))
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) 2) (sin.f64 ky))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) ky)) (/.f64 (sin.f64 th) ky)))
(/.f64 (/.f64 1 (/.f64 2 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))))) (sin.f64 ky))
Outputs
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 th)
Calls

8 calls:

337.0ms
th
266.0ms
(sin.f64 ky)
265.0ms
ky
248.0ms
(sin.f64 ky)
188.0ms
kx
Results
ErrorSegmentsBranch
38.5b4kx
37.9b5ky
41.6b5th
34.3b5(sin.f64 ky)
34.3b5(sin.f64 ky)
37.7b3(sin.f64 kx)
37.7b3(sin.f64 kx)
43.5b2(sin.f64 th)
Compiler

Compiled 748 to 371 computations (50.4% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.127663083485781e-11
1.2375031174861546e-9
0.0ms
1.6522915464139594e-64
8.416336260595351e-64
0.0ms
3.505809371626864e-156
2.0113047225491627e-143
0.0ms
-0.000771961082106785
-6.473984685291137e-5
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes1.3s (4.1%)

Counts
56 → 5
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(sin.f64 th)
(*.f64 -1/6 (pow.f64 th 3))
(/.f64 1 (/.f64 1 (sin.f64 th)))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky)))
(*.f64 (*.f64 ky ky) (*.f64 1/6 (sin.f64 th)))
(*.f64 th (*.f64 1/6 (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 ky (*.f64 1/6 th)))
(-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1)
(+.f64 (-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1) th)
(/.f64 (sin.f64 th) (*.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))
(/.f64 1 (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
(/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
(pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3)
(sqrt.f64 (*.f64 (pow.f64 th 6) 1/36))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 ky)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 1 (/.f64 (sin.f64 kx) ky)) (sin.f64 th))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (sin.f64 ky) (*.f64 (*.f64 1/6 ky) (sin.f64 th)))
(*.f64 (*.f64 1/6 ky) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 th (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (sin.f64 th) (*.f64 ky (+.f64 (*.f64 1/6 ky) (*.f64 -1/36 (pow.f64 ky 3)))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/36 (*.f64 (pow.f64 th 3) ky)) (*.f64 1/6 (*.f64 th ky))))
(/.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (/.f64 1 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))
(exp.f64 (log.f64 (sin.f64 th)))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(pow.f64 (cbrt.f64 (sin.f64 th)) 3)
(-.f64 (exp.f64 (log1p.f64 (sin.f64 th))) 1)
(exp.f64 (log.f64 (*.f64 -1/6 (pow.f64 th 3))))
(/.f64 1 (exp.f64 (neg.f64 (log.f64 (sin.f64 th)))))
(cbrt.f64 (*.f64 (pow.f64 (pow.f64 th 3) 3) -1/216))
Outputs
(sqrt.f64 (pow.f64 (sin.f64 th) 2))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(sin.f64 th)
Calls

8 calls:

224.0ms
th
168.0ms
(sin.f64 ky)
168.0ms
(sin.f64 th)
166.0ms
(sin.f64 th)
161.0ms
ky
Results
ErrorSegmentsBranch
39.9b4kx
37.9b5ky
41.4b7th
34.3b5(sin.f64 ky)
34.3b5(sin.f64 ky)
39.2b3(sin.f64 kx)
42.9b5(sin.f64 th)
42.9b5(sin.f64 th)
Compiler

Compiled 494 to 268 computations (45.7% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.127663083485781e-11
1.2375031174861546e-9
0.0ms
1.6522915464139594e-64
8.416336260595351e-64
0.0ms
3.505809371626864e-156
2.0113047225491627e-143
0.0ms
-0.000771961082106785
-6.473984685291137e-5
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes730.0ms (2.3%)

Counts
50 → 5
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(sin.f64 th)
(*.f64 -1/6 (pow.f64 th 3))
(/.f64 1 (/.f64 1 (sin.f64 th)))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky)))
(*.f64 (*.f64 ky ky) (*.f64 1/6 (sin.f64 th)))
(*.f64 th (*.f64 1/6 (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 ky (*.f64 1/6 th)))
(-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1)
(+.f64 (-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1) th)
(/.f64 (sin.f64 th) (*.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))
(/.f64 1 (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
(/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
(pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3)
(sqrt.f64 (*.f64 (pow.f64 th 6) 1/36))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(*.f64 (sin.f64 ky) (/.f64 th (sin.f64 ky)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3) th)
(/.f64 1 (/.f64 (sin.f64 ky) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 1 (/.f64 (sin.f64 kx) ky)) (sin.f64 th))
(*.f64 1/6 (*.f64 ky (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) ky)))
(*.f64 (sin.f64 ky) (*.f64 (*.f64 1/6 ky) (sin.f64 th)))
(*.f64 (*.f64 1/6 ky) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 th (*.f64 (sin.f64 ky) (fma.f64 1/6 ky (/.f64 1 ky))))
(*.f64 (sin.f64 th) (*.f64 ky (+.f64 (*.f64 1/6 ky) (*.f64 -1/36 (pow.f64 ky 3)))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/36 (*.f64 (pow.f64 th 3) ky)) (*.f64 1/6 (*.f64 th ky))))
(/.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th))
(*.f64 (-.f64 (*.f64 (pow.f64 th 6) 1/36) (*.f64 th th)) (/.f64 1 (-.f64 (*.f64 -1/6 (pow.f64 th 3)) th)))
(exp.f64 (log.f64 (sin.f64 th)))
(expm1.f64 (log1p.f64 (sin.f64 th)))
(log.f64 (exp.f64 (sin.f64 th)))
(cbrt.f64 (pow.f64 (sin.f64 th) 3))
Outputs
(sin.f64 th)
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(sin.f64 th)
Calls

7 calls:

137.0ms
ky
116.0ms
(sin.f64 ky)
114.0ms
(sin.f64 ky)
90.0ms
kx
88.0ms
(sin.f64 th)
Results
ErrorSegmentsBranch
41.3b3kx
38.4b5ky
45.0b3th
38.5b4(sin.f64 ky)
38.5b4(sin.f64 ky)
40.5b3(sin.f64 kx)
45.1b2(sin.f64 th)
Compiler

Compiled 451 to 238 computations (47.2% saved)

bsearch538.0ms (1.7%)

Algorithm
binary-search
Steps
TimeLeftRight
132.0ms
3.127663083485781e-11
1.2375031174861546e-9
135.0ms
1.6522915464139594e-64
8.416336260595351e-64
133.0ms
3.505809371626864e-156
2.0113047225491627e-143
138.0ms
-448056818614.6629
-0.0007719611587784836
Compiler

Compiled 25 to 19 computations (24% saved)

regimes338.0ms (1.1%)

Counts
25 → 5
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(sin.f64 th)
(*.f64 -1/6 (pow.f64 th 3))
(/.f64 1 (/.f64 1 (sin.f64 th)))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky)))
(*.f64 (*.f64 ky ky) (*.f64 1/6 (sin.f64 th)))
(*.f64 th (*.f64 1/6 (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 ky (*.f64 1/6 th)))
(-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1)
(+.f64 (-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1) th)
(/.f64 (sin.f64 th) (*.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))
(/.f64 1 (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
(/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
(pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3)
(sqrt.f64 (*.f64 (pow.f64 th 6) 1/36))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
Outputs
(sin.f64 th)
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(sin.f64 th)
Calls

8 calls:

63.0ms
ky
48.0ms
(sin.f64 ky)
47.0ms
(sin.f64 ky)
40.0ms
(sin.f64 th)
39.0ms
th
Results
ErrorSegmentsBranch
41.3b3kx
38.5b5ky
45.0b3th
38.5b4(sin.f64 ky)
38.5b4(sin.f64 ky)
41.5b2(sin.f64 kx)
41.5b2(sin.f64 kx)
45.1b2(sin.f64 th)
Compiler

Compiled 235 to 149 computations (36.6% saved)

bsearch531.0ms (1.7%)

Algorithm
binary-search
Steps
TimeLeftRight
135.0ms
3.127663083485781e-11
1.2375031174861546e-9
131.0ms
1.6522915464139594e-64
8.416336260595351e-64
130.0ms
3.505809371626864e-156
2.0113047225491627e-143
134.0ms
-448056818614.6629
-0.0007719611587784836
Compiler

Compiled 25 to 19 computations (24% saved)

regimes329.0ms (1%)

Counts
24 → 5
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(sin.f64 th)
(*.f64 -1/6 (pow.f64 th 3))
(/.f64 1 (/.f64 1 (sin.f64 th)))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky)))
(*.f64 (*.f64 ky ky) (*.f64 1/6 (sin.f64 th)))
(*.f64 th (*.f64 1/6 (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 ky (*.f64 1/6 th)))
(-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1)
(+.f64 (-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1) th)
(/.f64 (sin.f64 th) (*.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))
(/.f64 1 (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
(/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
(pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3)
(sqrt.f64 (*.f64 (pow.f64 th 6) 1/36))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) ky))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 ky))
Outputs
(sin.f64 th)
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(sin.f64 th)
Calls

8 calls:

59.0ms
ky
49.0ms
(sin.f64 ky)
47.0ms
(sin.f64 ky)
39.0ms
(sin.f64 th)
38.0ms
kx
Results
ErrorSegmentsBranch
41.3b3kx
38.5b5ky
45.0b3th
38.5b4(sin.f64 ky)
38.5b4(sin.f64 ky)
41.6b2(sin.f64 kx)
41.6b2(sin.f64 kx)
45.1b2(sin.f64 th)
Compiler

Compiled 228 to 147 computations (35.5% saved)

bsearch685.0ms (2.2%)

Algorithm
binary-search
Steps
TimeLeftRight
138.0ms
3.127663083485781e-11
1.2375031174861546e-9
154.0ms
1.6522915464139594e-64
8.416336260595351e-64
206.0ms
3.505809371626864e-156
2.0113047225491627e-143
187.0ms
-448056818614.6629
-0.0007719611587784836
Compiler

Compiled 25 to 19 computations (24% saved)

regimes71.0ms (0.2%)

Counts
21 → 2
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(sin.f64 th)
(*.f64 -1/6 (pow.f64 th 3))
(/.f64 1 (/.f64 1 (sin.f64 th)))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky)))
(*.f64 (*.f64 ky ky) (*.f64 1/6 (sin.f64 th)))
(*.f64 th (*.f64 1/6 (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 ky (*.f64 1/6 th)))
(-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1)
(+.f64 (-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1) th)
(/.f64 (sin.f64 th) (*.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))
(/.f64 1 (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
(/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
(pow.f64 (*.f64 th (cbrt.f64 -1/6)) 3)
(sqrt.f64 (*.f64 (pow.f64 th 6) 1/36))
Outputs
(/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6))))
(sin.f64 th)
Calls

4 calls:

21.0ms
th
15.0ms
(sin.f64 th)
13.0ms
kx
13.0ms
ky
Results
ErrorSegmentsBranch
47.7b1kx
47.7b1ky
46.7b2th
47.7b1(sin.f64 th)
Compiler

Compiled 187 to 125 computations (33.2% saved)

bsearch243.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
242.0ms
1.8618355634580832e-126
4.146350368292824e-121
Compiler

Compiled 25 to 19 computations (24% saved)

regimes164.0ms (0.5%)

Counts
18 → 3
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(sin.f64 th)
(*.f64 -1/6 (pow.f64 th 3))
(/.f64 1 (/.f64 1 (sin.f64 th)))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky)))
(*.f64 (*.f64 ky ky) (*.f64 1/6 (sin.f64 th)))
(*.f64 th (*.f64 1/6 (*.f64 ky (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 ky (*.f64 1/6 th)))
(-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1)
(+.f64 (-.f64 (+.f64 1 (*.f64 -1/6 (pow.f64 th 3))) 1) th)
(/.f64 (sin.f64 th) (*.f64 (*.f64 (/.f64 kx (*.f64 ky ky)) kx) 1/2))
(*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)) th))
(/.f64 1 (+.f64 (/.f64 1 th) (+.f64 (*.f64 1/6 th) (*.f64 7/360 (pow.f64 th 3)))))
Outputs
(sin.f64 th)
(*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky)))
(sin.f64 th)
Calls

5 calls:

41.0ms
(sin.f64 th)
34.0ms
kx
31.0ms
(sin.f64 th)
26.0ms
th
26.0ms
ky
Results
ErrorSegmentsBranch
47.3b3kx
46.4b3ky
47.9b3th
47.9b3(sin.f64 th)
47.9b3(sin.f64 th)
Compiler

Compiled 164 to 110 computations (32.9% saved)

bsearch300.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
132.0ms
9.964511369354392e-129
2.6486355529020575e-126
168.0ms
-0.0007719611587784836
-6.473984689813482e-5
Compiler

Compiled 25 to 19 computations (24% saved)

regimes109.0ms (0.3%)

Counts
8 → 3
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(sin.f64 th)
(*.f64 -1/6 (pow.f64 th 3))
(/.f64 1 (/.f64 1 (sin.f64 th)))
(+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)
Outputs
(sin.f64 th)
(*.f64 -1/6 (pow.f64 th 3))
(sin.f64 th)
Calls

5 calls:

29.0ms
kx
25.0ms
(sin.f64 th)
21.0ms
(sin.f64 th)
16.0ms
th
15.0ms
ky
Results
ErrorSegmentsBranch
48.7b2kx
47.3b3ky
47.9b3th
47.9b3(sin.f64 th)
47.9b3(sin.f64 th)
Compiler

Compiled 61 to 45 computations (26.2% saved)

bsearch371.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
178.0ms
4.6024765211504276e-141
9.964511369354392e-129
193.0ms
-6.473984689813482e-5
-2.1635618903801252e-14
Compiler

Compiled 25 to 19 computations (24% saved)

regimes24.0ms (0.1%)

Counts
5 → 1
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(sin.f64 th)
Outputs
(sin.f64 th)
Calls

4 calls:

7.0ms
ky
5.0ms
(sin.f64 th)
5.0ms
th
5.0ms
kx
Results
ErrorSegmentsBranch
49.7b1kx
49.7b1ky
49.7b1th
49.7b1(sin.f64 th)
Compiler

Compiled 38 to 28 computations (26.3% saved)

regimes15.0ms (0%)

Counts
4 → 1
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
Outputs
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
Calls

3 calls:

5.0ms
th
4.0ms
ky
4.0ms
kx
Results
ErrorSegmentsBranch
55.7b1kx
55.7b1ky
55.7b1th
Compiler

Compiled 31 to 23 computations (25.8% saved)

regimes50.0ms (0.2%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0.0b (-0%)

Counts
3 → 1
Calls
Call 1
Inputs
th
th
(/.f64 1 (/.f64 1 th))
Outputs
th
Calls

3 calls:

4.0ms
th
4.0ms
kx
4.0ms
ky
Results
ErrorSegmentsBranch
56.1b1kx
56.1b1ky
56.1b1th
Compiler

Compiled 22 to 16 computations (27.3% saved)

simplify73.0ms (0.2%)

Algorithm
egg-herbie
Rules
21×*-commutative_binary64
11×+-commutative_binary64
sub-neg_binary64
distribute-lft-neg-in_binary64
distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0131748
1165748
2182748
3190748
4196748
5198748
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(if (<=.f64 (sin.f64 ky) -1152921504606847/2305843009213693952) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 ky) 7737125245533627/154742504910672534362390528) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (*.f64 ky ky)))) (sin.f64 th)) (sin.f64 th)))
(if (<=.f64 (sin.f64 kx) -3022314549036573/151115727451828646838272) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th)) (if (<=.f64 (sin.f64 kx) -1418129833677085/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 kx) 5902958103587057/1180591620717411303424) (/.f64 (sin.f64 th) (+.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1)) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))))
(if (<=.f64 (sin.f64 kx) -3022314549036573/151115727451828646838272) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (sin.f64 th)) (if (<=.f64 (sin.f64 kx) -1418129833677085/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 kx) 5902958103587057/1180591620717411303424) (/.f64 (sin.f64 th) (+.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1)) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))))
(if (<=.f64 (sin.f64 ky) -1152921504606847/2305843009213693952) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 ky) 4830671903771573/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))) (if (<=.f64 (sin.f64 ky) 5928554968950589/29642774844752946028434172162224104410437116074403984394101141506025761187823616) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)) (if (<=.f64 (sin.f64 ky) 7737125245533627/154742504910672534362390528) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) -1152921504606847/2305843009213693952) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 ky) 4830671903771573/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (if (<=.f64 (sin.f64 ky) 5928554968950589/29642774844752946028434172162224104410437116074403984394101141506025761187823616) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)) (if (<=.f64 (sin.f64 ky) 7737125245533627/154742504910672534362390528) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))))
(if (<=.f64 ky -7340962916182637/16384) (sin.f64 th) (if (<=.f64 ky 3387082966299393/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (if (<=.f64 ky 2448925314411883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)) (if (<=.f64 ky 4839824200552277/154742504910672534362390528) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))))
(if (<=.f64 ky -7340962916182637/16384) (sin.f64 th) (if (<=.f64 ky 3387082966299393/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (if (<=.f64 ky 2448925314411883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6)))) (if (<=.f64 ky 4839824200552277/154742504910672534362390528) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))))
(if (<=.f64 ky -7340962916182637/16384) (sin.f64 th) (if (<=.f64 ky 3387082966299393/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th)) (if (<=.f64 ky 2448925314411883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6)))) (if (<=.f64 ky 4839824200552277/154742504910672534362390528) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th)) (sin.f64 th)))))
(if (<=.f64 th 1418989861121101/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856) (/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6)))) (sin.f64 th))
(if (<=.f64 ky -7120084965415475/9223372036854775808) (sin.f64 th) (if (<=.f64 ky 1944168682618081/195109284394749514461349826862072894109287383916560696928697309976585733676235351257519131441468248197489183195087913930965498479955517831643136) (*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky))) (sin.f64 th)))
(if (<=.f64 ky -4776957548404129/73786976294838206464) (sin.f64 th) (if (<=.f64 ky 7898767513299881/1716199415032652428745475199770348304317358825035826352348615864796385795849414013030639910165363638744324077847870214509280496999929160953143507072778764288) (*.f64 -1/6 (pow.f64 th 3)) (sin.f64 th)))
(sin.f64 th)
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
th
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(if (<=.f64 (sin.f64 ky) -1152921504606847/2305843009213693952) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 ky) 7737125245533627/154742504910672534362390528) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 kx kx)))) (*.f64 ky ky)))) (sin.f64 th)) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -1152921504606847/2305843009213693952) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 ky) 7737125245533627/154742504910672534362390528) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (+.f64 kx kx)))) (*.f64 ky ky))))) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -1152921504606847/2305843009213693952) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 ky) 7737125245533627/154742504910672534362390528) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (+.f64 1/2 (*.f64 (cos.f64 (+.f64 kx kx)) -1/2)) (*.f64 ky ky))))) (sin.f64 th)))
(if (<=.f64 (sin.f64 kx) -3022314549036573/151115727451828646838272) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) (sin.f64 th)) (if (<=.f64 (sin.f64 kx) -1418129833677085/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 kx) 5902958103587057/1180591620717411303424) (/.f64 (sin.f64 th) (+.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1)) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))))
(if (<=.f64 (sin.f64 kx) -3022314549036573/151115727451828646838272) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx 2))))))) (if (<=.f64 (sin.f64 kx) -1418129833677085/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 kx) 5902958103587057/1180591620717411303424) (/.f64 (sin.f64 th) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 kx (sin.f64 ky)) 2)) 1)) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))))
(if (<=.f64 (sin.f64 kx) -3022314549036573/151115727451828646838272) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 1/2 (*.f64 (cos.f64 (*.f64 kx 2)) -1/2))))) (if (<=.f64 (sin.f64 kx) -1418129833677085/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 kx) 5902958103587057/1180591620717411303424) (/.f64 (sin.f64 th) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 kx (sin.f64 ky)) 2)) 1)) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))))
(if (<=.f64 (sin.f64 kx) -3022314549036573/151115727451828646838272) (*.f64 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 2 kx)))))) ky) (sin.f64 th)) (if (<=.f64 (sin.f64 kx) -1418129833677085/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 kx) 5902958103587057/1180591620717411303424) (/.f64 (sin.f64 th) (+.f64 (*.f64 (pow.f64 (/.f64 kx (sin.f64 ky)) 2) 1/2) 1)) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))))
(if (<=.f64 (sin.f64 kx) -3022314549036573/151115727451828646838272) (*.f64 (sin.f64 th) (*.f64 ky (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 -1/2 (cos.f64 (*.f64 kx 2)))))))) (if (<=.f64 (sin.f64 kx) -1418129833677085/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 kx) 5902958103587057/1180591620717411303424) (/.f64 (sin.f64 th) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 kx (sin.f64 ky)) 2)) 1)) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))))
(if (<=.f64 (sin.f64 kx) -3022314549036573/151115727451828646838272) (*.f64 (sin.f64 th) (*.f64 ky (sqrt.f64 (/.f64 1 (+.f64 1/2 (*.f64 (cos.f64 (*.f64 kx 2)) -1/2)))))) (if (<=.f64 (sin.f64 kx) -1418129833677085/70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 kx) 5902958103587057/1180591620717411303424) (/.f64 (sin.f64 th) (+.f64 (*.f64 1/2 (pow.f64 (/.f64 kx (sin.f64 ky)) 2)) 1)) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))))
(if (<=.f64 (sin.f64 ky) -1152921504606847/2305843009213693952) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 ky) 4830671903771573/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))) (if (<=.f64 (sin.f64 ky) 5928554968950589/29642774844752946028434172162224104410437116074403984394101141506025761187823616) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)) (if (<=.f64 (sin.f64 ky) 7737125245533627/154742504910672534362390528) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) -1152921504606847/2305843009213693952) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 ky) 4830671903771573/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))) (if (<=.f64 (sin.f64 ky) 5928554968950589/29642774844752946028434172162224104410437116074403984394101141506025761187823616) (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 ky)) (if (<=.f64 (sin.f64 ky) 7737125245533627/154742504910672534362390528) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) -1152921504606847/2305843009213693952) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 ky) 4830671903771573/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (if (<=.f64 (sin.f64 ky) 5928554968950589/29642774844752946028434172162224104410437116074403984394101141506025761187823616) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)) (if (<=.f64 (sin.f64 ky) 7737125245533627/154742504910672534362390528) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) -1152921504606847/2305843009213693952) (sqrt.f64 (pow.f64 (sin.f64 th) 2)) (if (<=.f64 (sin.f64 ky) 4830671903771573/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (if (<=.f64 (sin.f64 ky) 5928554968950589/29642774844752946028434172162224104410437116074403984394101141506025761187823616) (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 ky)) (if (<=.f64 (sin.f64 ky) 7737125245533627/154742504910672534362390528) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))))
(if (<=.f64 ky -7340962916182637/16384) (sin.f64 th) (if (<=.f64 ky 3387082966299393/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (if (<=.f64 ky 2448925314411883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 ky)) (if (<=.f64 ky 4839824200552277/154742504910672534362390528) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))))
(if (<=.f64 ky -7340962916182637/16384) (sin.f64 th) (if (<=.f64 ky 3387082966299393/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (if (<=.f64 ky 2448925314411883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 ky)) (if (<=.f64 ky 4839824200552277/154742504910672534362390528) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))))
(if (<=.f64 ky -7340962916182637/16384) (sin.f64 th) (if (<=.f64 ky 3387082966299393/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (if (<=.f64 ky 2448925314411883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6)))) (if (<=.f64 ky 4839824200552277/154742504910672534362390528) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))))
(if (<=.f64 ky -7340962916182637/16384) (sin.f64 th) (if (<=.f64 ky 3387082966299393/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th)) (if (<=.f64 ky 2448925314411883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6)))) (if (<=.f64 ky 4839824200552277/154742504910672534362390528) (*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th)) (sin.f64 th)))))
(if (<=.f64 ky -7340962916182637/16384) (sin.f64 th) (if (<=.f64 ky 3387082966299393/966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))) (if (<=.f64 ky 2448925314411883/14821387422376473014217086081112052205218558037201992197050570753012880593911808) (/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6)))) (if (<=.f64 ky 4839824200552277/154742504910672534362390528) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))) (sin.f64 th)))))
(if (<=.f64 th 1418989861121101/762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856) (/.f64 (sin.f64 th) (+.f64 1 (*.f64 (*.f64 kx kx) (+.f64 (/.f64 1/2 (*.f64 ky ky)) 1/6)))) (sin.f64 th))
(if (<=.f64 ky -7120084965415475/9223372036854775808) (sin.f64 th) (if (<=.f64 ky 1944168682618081/195109284394749514461349826862072894109287383916560696928697309976585733676235351257519131441468248197489183195087913930965498479955517831643136) (*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 th ky))) (sin.f64 th)))
(if (<=.f64 ky -7120084965415475/9223372036854775808) (sin.f64 th) (if (<=.f64 ky 1944168682618081/195109284394749514461349826862072894109287383916560696928697309976585733676235351257519131441468248197489183195087913930965498479955517831643136) (*.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 ky th))) (sin.f64 th)))
(if (<=.f64 ky -4776957548404129/73786976294838206464) (sin.f64 th) (if (<=.f64 ky 7898767513299881/1716199415032652428745475199770348304317358825035826352348615864796385795849414013030639910165363638744324077847870214509280496999929160953143507072778764288) (*.f64 -1/6 (pow.f64 th 3)) (sin.f64 th)))
(sin.f64 th)
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(/.f64 1 (+.f64 (/.f64 1 th) (*.f64 th 1/6)))
th
Compiler

Compiled 529 to 314 computations (40.6% saved)

soundness63.0ms (0.2%)

Algorithm
egg-herbie
Rules
719×fma-def_binary64
688×associate-*r*_binary64
656×associate-*l*_binary64
350×distribute-rgt-in_binary64
347×distribute-lft-in_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01821683
15261536
217641516
Stop Event
node limit
Compiler

Compiled 50 to 36 computations (28% saved)

end324.0ms (1%)

Compiler

Compiled 484 to 221 computations (54.3% saved)

Profiling

Loading profile data...