Details

Time bar (total: 38.6s)

analyze615.0ms (1.6%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
0%99.9%0.1%4
0%99.9%0.1%5
0%99.9%0.1%6
0%99.9%0.1%7
25%74.9%0.1%8
54.6%45.2%0.1%9
56.2%43.7%0.1%10
62.4%37.4%0.1%11
65.9%33.9%0.1%12
Compiler

Compiled 20 to 15 computations (25% saved)

sample7.6s (19.6%)

Results
5.7s4732×body1024valid
1.2s1467×body512valid
655.0ms2037×body256valid
37.0ms20×body2048valid

preprocess113.0ms (0.3%)

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)

simplify89.0ms (0.2%)

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.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
4.2b
(*.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)

localize26.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 36 to 9 computations (75% saved)

series33.0ms (0.1%)

Counts
3 → 96
Calls

24 calls:

TimeVariablePointExpression
6.0ms
kx
@0
(*.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))))
2.0ms
kx
@inf
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
2.0ms
th
@inf
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))

rewrite73.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))))))

simplify85.0ms (0.2%)

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))

localize47.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 69 to 37 computations (46.4% saved)

series40.0ms (0.1%)

Counts
4 → 68
Calls

21 calls:

TimeVariablePointExpression
10.0ms
ky
@0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
5.0ms
kx
@0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
2.0ms
ky
@inf
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
2.0ms
ky
@0
(pow.f64 (sin.f64 ky) 2)
2.0ms
th
@inf
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))

rewrite98.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
697×prod-diff_binary64
689×log-prod_binary64
256×expm1-udef_binary64
256×log1p-udef_binary64
254×fma-def_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01454
129938
2382838
Stop Event
node limit
Counts
4 → 104
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 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (sin.f64 th))
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 (*.f64 (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (cbrt.f64 (exp.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (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 (sqrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) 2)) (sqrt.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2)))))) (#(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 (pow.f64 (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) 2) 1/2) (pow.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) 1/2))))) (#(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 (pow.f64 (sin.f64 kx) 4) (-.f64 (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)) 3) 1/3)))) (#(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 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 ky) 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) (cbrt.f64 (pow.f64 (sin.f64 ky) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.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)) (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 ky))) (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 (*.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 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 (pow.f64 (cbrt.f64 (sin.f64 kx)) 2) (*.f64 (cbrt.f64 (sin.f64 kx)) (sin.f64 kx)))))) (#(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)) (*.f64 (sqrt.f64 (sin.f64 kx)) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 kx) (sqrt.f64 (sin.f64 kx))) (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 (*.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 +.f64 0 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th))) (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 ky) (/.f64 (hypot.f64 (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 kx) (sin.f64 ky)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (hypot.f64 (sin.f64 kx) (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)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 1) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (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 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (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 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (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 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 1))))))

simplify111.0ms (0.3%)

Algorithm
egg-herbie
Rules
969×fma-def_binary64
432×distribute-lft-in_binary64
432×distribute-rgt-in_binary64
426×*-commutative_binary64
303×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02062422
16012274
220182140
376772140
Stop Event
node limit
Counts
172 → 160
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 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) 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)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 1/12 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))))) (pow.f64 ky 5)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 kx) (*.f64 (sin.f64 th) (+.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/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)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (*.f64 -1/240 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (+.f64 (/.f64 (*.f64 (sin.f64 th) 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)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 1/12 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))))) (pow.f64 ky 5)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (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/2 (/.f64 (*.f64 (sin.f64 th) (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) (+.f64 (sin.f64 th) (*.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 (sin.f64 th) (*.f64 (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 (*.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 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6))))) (+.f64 (sin.f64 th) (*.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 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (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 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
(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)))
(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))) (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 (*.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 (*.f64 -1/2 (+.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))))
(+.f64 (*.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) -1/6) (sin.f64 ky)) (pow.f64 kx 4)) (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))) (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 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (sin.f64 kx) (pow.f64 ky 4))) (sin.f64 kx)))
(+.f64 (sin.f64 kx) (fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (*.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (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 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))) (sin.f64 kx)) (pow.f64 ky 6)) (/.f64 -1/2 (/.f64 (sin.f64 kx) (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4))))))
(+.f64 (sin.f64 kx) (fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (fma.f64 1/2 (*.f64 (pow.f64 ky 6) (/.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))) (*.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (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 ky ky (fma.f64 (pow.f64 ky 4) -1/3 (fma.f64 2/45 (pow.f64 ky 6) (*.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 kx kx (*.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 (*.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 (*.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 th) (sin.f64 kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3)))
(+.f64 (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (*.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3)))
(fma.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (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 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) -1/6)) (pow.f64 ky 3)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) 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)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 1/12 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))))) (pow.f64 ky 5)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3))))
(+.f64 (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (fma.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))) (*.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/12 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120))) (pow.f64 ky 5) (*.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3))))
(+.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (fma.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))) (*.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) 1/12 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120))) (pow.f64 ky 5) (*.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3))))
(fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (fma.f64 (fma.f64 1/2 (*.f64 (sin.f64 kx) (*.f64 (sin.f64 th) (+.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 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 1/12 (pow.f64 (sin.f64 kx) 2)) 1/120))) (pow.f64 ky 5) (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) -1/6)) (pow.f64 ky 3))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 kx) (*.f64 (sin.f64 th) (+.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/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)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (*.f64 -1/240 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))))) (pow.f64 ky 7)) (+.f64 (/.f64 (*.f64 (sin.f64 th) 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)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 1/12 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 1/120 (/.f64 (sin.f64 th) (sin.f64 kx))))) (pow.f64 ky 5)) (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3)))))
(fma.f64 (fma.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/2 (*.f64 (sin.f64 kx) (*.f64 (sin.f64 th) (+.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)))))))) (fma.f64 -1/12 (*.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) (sin.f64 th))) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/240)))) (pow.f64 ky 7) (+.f64 (/.f64 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (fma.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))) (*.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 1/12 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120))) (pow.f64 ky 5) (*.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3)))))
(fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040 (fma.f64 -1/2 (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (+.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 2/3 (pow.f64 (sin.f64 kx) 6))))) (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/240 (*.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 (*.f64 (sin.f64 kx) (sin.f64 th)) -1/12))))) (pow.f64 ky 7) (+.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (fma.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))) (*.f64 (sin.f64 kx) (sin.f64 th))) (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) 1/12 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120))) (pow.f64 ky 5) (*.f64 (fma.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 ky 3)))))
(fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (fma.f64 (+.f64 (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (+.f64 (*.f64 -1/2 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 kx) 6)) (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 -1/12 (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (/.f64 -1/12 (pow.f64 (sin.f64 kx) 6))))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 -1/240 (pow.f64 (sin.f64 kx) 2)) -1/5040))) (pow.f64 ky 7) (fma.f64 (fma.f64 1/2 (*.f64 (sin.f64 kx) (*.f64 (sin.f64 th) (+.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 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 1/12 (pow.f64 (sin.f64 kx) 2)) 1/120))) (pow.f64 ky 5) (*.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) -1/6)) (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 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (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 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (/.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th))
(+.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/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 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4)))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.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 (sin.f64 th) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2))))))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (/.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))) (fma.f64 1/2 (*.f64 (sin.f64 th) (*.f64 (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2)) (+.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))))) (sin.f64 th)))
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2))) (fma.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (-.f64 (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2) (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)))) (*.f64 1/2 (*.f64 (pow.f64 kx 4) (*.f64 (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))) (+.f64 (*.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 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6))))) (+.f64 (sin.f64 th) (*.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 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4))))))))
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) 2)) (fma.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 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)))) (+.f64 (sin.f64 th) (*.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 (sin.f64 th) (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2))))))))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (/.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))) (fma.f64 -1/2 (*.f64 (sin.f64 th) (*.f64 (*.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 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 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)))))) (fma.f64 1/2 (*.f64 (sin.f64 th) (*.f64 (*.f64 (pow.f64 kx 4) (pow.f64 (sin.f64 ky) 2)) (+.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))))) (sin.f64 th))))
(fma.f64 -1/2 (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx) (*.f64 (pow.f64 kx 6) (*.f64 (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (-.f64 (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2) (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)))) (pow.f64 (sin.f64 ky) 2)) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))))) (fma.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (-.f64 (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2) (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)))) (*.f64 1/2 (*.f64 (pow.f64 kx 4) (*.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th)))) (sin.f64 th)))
(fma.f64 -1/2 (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx) (*.f64 (pow.f64 kx 6) (*.f64 (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (fma.f64 -1/2 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 8)) (/.f64 (-.f64 (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2) (/.f64 1/3 (pow.f64 (sin.f64 ky) 4))) (pow.f64 (sin.f64 ky) 2))) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))))) (fma.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (-.f64 (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2) (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)))) (*.f64 1/2 (*.f64 (pow.f64 kx 4) (*.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th)))) (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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (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 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 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (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 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 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) (*.f64 1/120 (pow.f64 th 5)))))
(+.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)))))
(+.f64 (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (+.f64 th (*.f64 -1/5040 (pow.f64 th 7)))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (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 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (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)))) (*.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 (sin.f64 th) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))

eval163.0ms (0.4%)

Compiler

Compiled 9105 to 4417 computations (51.5% saved)

prune137.0ms (0.4%)

Pruning

20 alts after pruning (19 fresh and 1 done)

PrunedKeptTotal
New31719336
Fresh000
Picked101
Done011
Total31820338
Error
0b
Counts
338 → 20
Alt Table
Click to see full alt table
StatusErrorProgram
15.5b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
1.3b
(pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 3)
50.9b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
36.8b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
50.9b
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
0.3b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
9.4b
(*.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))
51.0b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
0.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
45.0b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (sin.f64 ky)) kx) (sin.f64 ky))))
0.2b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
49.1b
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
1.5b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.4b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (expm1.f64 (log1p.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
0.3b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
49.1b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
48.7b
(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))
48.7b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
1.6b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
Compiler

Compiled 552 to 379 computations (31.3% saved)

localize22.0ms (0.1%)

Local error

Found 3 expressions with local error:

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

Compiled 36 to 9 computations (75% saved)

series21.0ms (0.1%)

Counts
3 → 84
Calls

21 calls:

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

rewrite81.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
01039
120939
2283539
Stop Event
node limit
Counts
3 → 134
Calls
Call 1
Inputs
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 2) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 1 (neg.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) 1) (/.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1) (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) -2) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (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 kx) (sin.f64 ky)) (sqrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 2) (sqrt.f64 (sin.f64 ky))) (/.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky))))))) (#(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 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 2)))) (#(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 (exp.f64 1) (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 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 kx) (sin.f64 ky))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 2)) (cbrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))) (sqrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 2))))) (#(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))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))))) (#(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 kx) (sin.f64 ky)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (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 (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) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) (sin.f64 ky))) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) (sin.f64 ky))) -2)) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(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 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 th)) (/.f64 1 (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (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 th)) 2) 1) (/.f64 (cbrt.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.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 kx) (sin.f64 ky))) (/.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 kx) (sin.f64 ky))) (/.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 kx) (sin.f64 ky)) (sin.f64 ky))) -2) (/.f64 (sin.f64 th) (cbrt.f64 (/.f64 (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 th)) 2) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 2)) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 2)) (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) -1/2) (/.f64 (sin.f64 th) (sqrt.f64 (/.f64 (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 th)) 2) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) (/.f64 (cbrt.f64 (sin.f64 th)) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) 1) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (neg.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (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 kx) (sin.f64 ky))) (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 kx) (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) (sin.f64 ky))) -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 kx) (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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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)) (*.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 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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)) (*.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 kx) (sin.f64 ky)))))) 2)) (cbrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))))) (#(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 kx) (sin.f64 ky))))))) (sqrt.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 th) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) (sin.f64 ky))) -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 kx) (sin.f64 ky)))))))) (#(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 kx) (sin.f64 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 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 kx) (sin.f64 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) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) 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 kx) (sin.f64 ky)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.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 kx) (sin.f64 ky))))) 1) 1))))))
((#(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 (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 (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 (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 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)) 3) 1/3)))) (#(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 pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 2)) (cbrt.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (sqrt.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 2))))) (#(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 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 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1) 1))))))

simplify85.0ms (0.2%)

Algorithm
egg-herbie
Rules
826×fma-def_binary64
695×associate-*r*_binary64
668×associate-*l*_binary64
426×times-frac_binary64
399×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02033206
16232870
221022693
Stop Event
node limit
Counts
218 → 191
Calls
Call 1
Inputs
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)))
(/.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)))
(*.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 (*.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 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)))
Outputs
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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (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))
(+.f64 1 (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4)))))
(+.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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)))))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (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 (+.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)) (pow.f64 kx 6))) 1))
(+.f64 1 (fma.f64 1/2 (fma.f64 (/.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3) (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 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (/.f64 (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))
(/.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 (-.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 (/.f64 (sin.f64 kx) ky) (fma.f64 (-.f64 (/.f64 (+.f64 -1/6 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (sin.f64 kx)) (fma.f64 (sin.f64 kx) 1/120 (*.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6))))) (pow.f64 ky 3) (*.f64 ky (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)))))
(fma.f64 (-.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))))) (pow.f64 ky 3) (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 (*.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 (-.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))))))) (pow.f64 ky 5)))))
(+.f64 (fma.f64 ky (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)) (/.f64 (sin.f64 kx) ky)) (fma.f64 (-.f64 (*.f64 1/2 (-.f64 (/.f64 2/45 (sin.f64 kx)) (/.f64 (+.f64 -1/6 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3)))) (fma.f64 (sin.f64 kx) -1/5040 (fma.f64 -1/6 (-.f64 (/.f64 (+.f64 -1/6 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (sin.f64 kx)) (fma.f64 (sin.f64 kx) 1/120 (*.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6))))) (*.f64 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)) 1/120)))) (pow.f64 ky 5) (*.f64 (-.f64 (/.f64 (+.f64 -1/6 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (sin.f64 kx)) (fma.f64 (sin.f64 kx) 1/120 (*.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6))))) (pow.f64 ky 3))))
(+.f64 (/.f64 (sin.f64 kx) ky) (fma.f64 (-.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)))))) (pow.f64 ky 5) (fma.f64 (-.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))))) (pow.f64 ky 3) (*.f64 ky (fma.f64 (sin.f64 kx) 1/6 (/.f64 1/2 (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))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (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 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 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 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 (+.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 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))))
(fma.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 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 (+.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 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (fma.f64 -1/5040 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 7) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))))))
(+.f64 (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (+.f64 th (*.f64 (pow.f64 th 7) -1/5040))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 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 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (/.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))) (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 (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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)))))) (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 kx kx) (/.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (/.f64 (*.f64 (sin.f64 th) -1/4) (pow.f64 (sin.f64 ky) 4)))))
(-.f64 (fma.f64 -1/2 (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) (sin.f64 th)) (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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)))))) (+.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 (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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3))))) (pow.f64 (sin.f64 ky) 2)) (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 th)) (pow.f64 (sin.f64 ky) 2)) (*.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3))))))))))
(-.f64 (-.f64 (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (/.f64 (pow.f64 (sin.f64 ky) 2) (sin.f64 th))) (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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (/.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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (/.f64 (*.f64 (*.f64 1/4 (sin.f64 th)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (pow.f64 (sin.f64 ky) 4)))))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (/.f64 (*.f64 (sin.f64 th) -1/4) (pow.f64 (sin.f64 ky) 4)))))
(-.f64 (-.f64 (fma.f64 -1/2 (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) (sin.f64 th)) (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 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3) (pow.f64 (sin.f64 ky) 2)) 2/45)) (fma.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3)) (*.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 2)) (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 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)))
(/.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 (/.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 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (*.f64 (pow.f64 ky 3) (+.f64 (/.f64 (*.f64 -1/6 (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 -1/2 (/.f64 (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 (/.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 1/120 (sin.f64 th)) (sin.f64 kx)) (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 (*.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 (*.f64 -1/6 (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 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 3) (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th)))))) (fma.f64 (pow.f64 ky 3) (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)))
(fma.f64 (pow.f64 ky 5) (-.f64 (*.f64 (/.f64 1/120 (sin.f64 kx)) (sin.f64 th)) (fma.f64 1/2 (/.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)) (*.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 (/.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 1/120 (sin.f64 th)) (sin.f64 kx)) (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 (*.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 -1/5040 (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 (*.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 (*.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 (*.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 (pow.f64 ky 3) (+.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 (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 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (pow.f64 (sin.f64 kx) 2)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 3) (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th)))))) (fma.f64 (pow.f64 ky 3) (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/2 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky))) (*.f64 (-.f64 (/.f64 (*.f64 -1/5040 (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 (fma.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 (pow.f64 (sin.f64 kx) 3) (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 th)))))) (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 (*.f64 (+.f64 -1/6 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (fma.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))))) (pow.f64 ky 7)))
(fma.f64 (pow.f64 ky 5) (-.f64 (*.f64 (/.f64 1/120 (sin.f64 kx)) (sin.f64 th)) (fma.f64 1/2 (/.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)) (*.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 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (*.f64 (-.f64 (fma.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 -1/2 (-.f64 (*.f64 (/.f64 1/120 (sin.f64 kx)) (sin.f64 th)) (fma.f64 1/2 (/.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)) (*.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 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)))
(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 (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)))
(+.f64 (sin.f64 ky) (fma.f64 1/2 (*.f64 (/.f64 kx (sin.f64 ky)) kx) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (/.f64 (sin.f64 ky) (pow.f64 kx 4)))))
(+.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 (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 (fma.f64 (/.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3) (pow.f64 (sin.f64 ky) 2)) 2/45) (sin.f64 ky)) (pow.f64 kx 6) (*.f64 (/.f64 kx (sin.f64 ky)) kx)) (+.f64 (sin.f64 ky) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (/.f64 (sin.f64 ky) (pow.f64 kx 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))
(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 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (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 (sin.f64 kx)) (/.f64 (+.f64 -1/6 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (pow.f64 (sin.f64 kx) 3))) (pow.f64 ky 6)) (/.f64 (+.f64 -1/6 (*.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))) (/.f64 (sin.f64 kx) (pow.f64 ky 4)))))
(+.f64 (fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 kx)) ky) (sin.f64 kx)) (fma.f64 1/2 (*.f64 (-.f64 (/.f64 2/45 (sin.f64 kx)) (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (pow.f64 (sin.f64 kx) 3))) (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))

localize9.0ms (0%)

Compiler

Compiled 6 to 4 computations (33.3% saved)

localize12.0ms (0%)

Local error

Found 2 expressions with local error:

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

Compiled 25 to 8 computations (68% saved)

series11.0ms (0%)

Counts
2 → 44
Calls

15 calls:

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

rewrite61.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
971×pow1_binary64
891×add-log-exp_binary64
891×log1p-expm1-u_binary64
891×expm1-log1p-u_binary64
95×*-un-lft-identity_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0921
118221
2235021
Stop Event
node limit
Counts
2 → 55
Calls
Call 1
Inputs
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (sin.f64 th) (sin.f64 kx))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (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)) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 1) (sin.f64 kx))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (cbrt.f64 (pow.f64 (sin.f64 kx) 2))) (cbrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (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 (sin.f64 kx) (sin.f64 th)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (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 th) (sin.f64 kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 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 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 1 (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 th) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) 2) (cbrt.f64 (/.f64 (sin.f64 th) (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 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) (sqrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 th)) (*.f64 (sqrt.f64 (sin.f64 th)) (/.f64 1 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 th)) (/.f64 1 (neg.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 kx)) (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 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) 1) (/.f64 (sqrt.f64 (sin.f64 th)) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (sin.f64 kx) 2))) (/.f64 (sin.f64 th) (cbrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (cbrt.f64 (pow.f64 (sin.f64 kx) 2))) (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 (pow.f64 (sin.f64 kx) 2))) (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (sin.f64 kx))) (/.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (sqrt.f64 (sin.f64 kx))) (/.f64 (cbrt.f64 (sin.f64 th)) (sqrt.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) (sin.f64 kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (sin.f64 kx) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 th) (sin.f64 kx))))))))

simplify60.0ms (0.2%)

Algorithm
egg-herbie
Rules
811×fma-neg_binary64
635×fma-def_binary64
589×distribute-rgt-in_binary64
454×associate-*l*_binary64
428×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0110994
1348963
21132911
34787827
Stop Event
node limit
Counts
99 → 95
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 7)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 7)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 kx 5) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 th) (sin.f64 ky))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/6 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky))))))))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 th (sin.f64 kx))
(+.f64 (/.f64 th (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx))))
(+.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx))) (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx)))))
(+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 th 7) (sin.f64 kx))) (+.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx))) (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx))))))
(/.f64 (sin.f64 th) kx)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 kx 3))) (/.f64 (sin.f64 th) kx)))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (+.f64 (*.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 kx 5))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 kx 3))) (/.f64 (sin.f64 th) kx))))
Outputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 ky (sin.f64 kx)) (sin.f64 th))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(fma.f64 -1/6 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 3)) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (fma.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 1/120 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 5)) (/.f64 (*.f64 (*.f64 -1/6 (sin.f64 th)) (pow.f64 ky 3)) (sin.f64 kx))))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/120 (*.f64 (pow.f64 ky 5) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 1/120 (pow.f64 ky 5)))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 7)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx))) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (fma.f64 -1/5040 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 7))) (fma.f64 1/120 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (fma.f64 -1/5040 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 7)) (fma.f64 1/120 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 5)) (/.f64 (*.f64 (*.f64 -1/6 (sin.f64 th)) (pow.f64 ky 3)) (sin.f64 kx)))))
(fma.f64 -1/5040 (*.f64 (pow.f64 ky 7) (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 1/120 (*.f64 (pow.f64 ky 5) (/.f64 (sin.f64 th) (sin.f64 kx))) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))))))
(+.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (*.f64 1/120 (pow.f64 ky 5)) (*.f64 -1/5040 (pow.f64 ky 7)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 th (sin.f64 ky)) (sin.f64 kx))
(/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))
(fma.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx)) (/.f64 (*.f64 th (sin.f64 ky)) (sin.f64 kx)))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) (/.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))))
(fma.f64 1/120 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 5))) (fma.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx)) (/.f64 (*.f64 th (sin.f64 ky)) (sin.f64 kx))))
(fma.f64 1/120 (/.f64 (pow.f64 th 5) (/.f64 (sin.f64 kx) (sin.f64 ky))) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (/.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (sin.f64 ky) (sin.f64 kx))) (fma.f64 1/120 (*.f64 (pow.f64 th 5) (/.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky)))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 1/120 (pow.f64 th 5)))))
(+.f64 (*.f64 1/120 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 7)) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx)))))
(fma.f64 1/120 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 5))) (fma.f64 -1/6 (/.f64 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (sin.f64 kx)) (fma.f64 -1/5040 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (pow.f64 th 7))) (/.f64 (*.f64 th (sin.f64 ky)) (sin.f64 kx)))))
(fma.f64 1/120 (/.f64 (pow.f64 th 5) (/.f64 (sin.f64 kx) (sin.f64 ky))) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (/.f64 (sin.f64 kx) (sin.f64 ky))) (fma.f64 -1/5040 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 th 7)) (/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky))))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (sin.f64 ky) (sin.f64 kx))) (fma.f64 1/120 (*.f64 (pow.f64 th 5) (/.f64 (sin.f64 ky) (sin.f64 kx))) (fma.f64 -1/5040 (*.f64 (pow.f64 th 7) (/.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 th (/.f64 (sin.f64 kx) (sin.f64 ky))))))
(+.f64 (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/5040 (pow.f64 th 7)))) (*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) (*.f64 1/120 (pow.f64 th 5)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 kx (sin.f64 ky))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 kx 1/6) (/.f64 (sin.f64 th) kx)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))))
(fma.f64 -1 (*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/360) (pow.f64 kx 3)) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 kx (sin.f64 ky)))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 -7/360 (pow.f64 kx 3))))
(fma.f64 (pow.f64 kx 3) (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) 7/360)) (*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 kx 1/6) (/.f64 (sin.f64 th) kx))))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky)))) (pow.f64 kx 3))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 kx 5) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 th) (sin.f64 ky))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/6 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (sin.f64 ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (sin.f64 ky))))))))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))))
(fma.f64 -1 (*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/360) (pow.f64 kx 3)) (fma.f64 -1 (*.f64 (pow.f64 kx 5) (fma.f64 1/720 (*.f64 (sin.f64 th) (sin.f64 ky)) (fma.f64 -1/5040 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 1/6 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/360))))) (+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 kx (sin.f64 ky))))))
(-.f64 (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))) (*.f64 (pow.f64 kx 5) (+.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -7/2160) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) 1/840)))) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 -7/360 (pow.f64 kx 3))))
(-.f64 (*.f64 (sin.f64 ky) (fma.f64 (sin.f64 th) (*.f64 kx 1/6) (/.f64 (sin.f64 th) kx))) (fma.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 (pow.f64 kx 3) -7/360) (*.f64 (pow.f64 kx 5) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) -31/15120))))
(fma.f64 (pow.f64 kx 5) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) 31/15120) (*.f64 (sin.f64 ky) (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (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 th (sin.f64 kx))
(+.f64 (/.f64 th (sin.f64 kx)) (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx))))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx)) (/.f64 th (sin.f64 kx)))
(+.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx))) (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx)))))
(+.f64 (/.f64 th (sin.f64 kx)) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx)) (/.f64 (*.f64 1/120 (pow.f64 th 5)) (sin.f64 kx))))
(+.f64 (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx)) (/.f64 th (sin.f64 kx))) (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx))))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx)) (fma.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx)) (/.f64 th (sin.f64 kx))))
(+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 th 7) (sin.f64 kx))) (+.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx))) (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx))))))
(fma.f64 -1/5040 (/.f64 (pow.f64 th 7) (sin.f64 kx)) (+.f64 (/.f64 th (sin.f64 kx)) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx)) (/.f64 (*.f64 1/120 (pow.f64 th 5)) (sin.f64 kx)))))
(+.f64 (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx)) (*.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx)))) (fma.f64 -1/5040 (/.f64 (pow.f64 th 7) (sin.f64 kx)) (/.f64 th (sin.f64 kx))))
(fma.f64 -1/5040 (/.f64 (pow.f64 th 7) (sin.f64 kx)) (fma.f64 -1/6 (/.f64 (pow.f64 th 3) (sin.f64 kx)) (fma.f64 1/120 (/.f64 (pow.f64 th 5) (sin.f64 kx)) (/.f64 th (sin.f64 kx)))))
(/.f64 (sin.f64 th) kx)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx))
(fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))
(fma.f64 (sin.f64 th) (*.f64 kx 1/6) (/.f64 (sin.f64 th) kx))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 kx 3))) (/.f64 (sin.f64 th) kx)))
(fma.f64 1/6 (*.f64 (sin.f64 th) kx) (fma.f64 -1 (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 th) -7/360)) (/.f64 (sin.f64 th) kx)))
(fma.f64 1/6 (*.f64 (sin.f64 th) kx) (-.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 -7/360 (pow.f64 kx 3)))))
(+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))))
(+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (+.f64 (*.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 kx 5))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sin.f64 th)) (*.f64 1/120 (sin.f64 th))) (pow.f64 kx 3))) (/.f64 (sin.f64 th) kx))))
(fma.f64 1/6 (*.f64 (sin.f64 th) kx) (fma.f64 -1 (*.f64 (pow.f64 kx 5) (fma.f64 1/6 (*.f64 (sin.f64 th) -7/360) (*.f64 (sin.f64 th) 1/840))) (fma.f64 -1 (*.f64 (pow.f64 kx 3) (*.f64 (sin.f64 th) -7/360)) (/.f64 (sin.f64 th) kx))))
(fma.f64 1/6 (*.f64 (sin.f64 th) kx) (-.f64 (-.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 -7/360 (pow.f64 kx 3)))) (*.f64 (pow.f64 kx 5) (fma.f64 (sin.f64 th) 1/840 (*.f64 (sin.f64 th) -7/2160)))))
(+.f64 (*.f64 (sin.f64 th) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))) (-.f64 (/.f64 (sin.f64 th) kx) (*.f64 (pow.f64 kx 5) (*.f64 (sin.f64 th) -31/15120))))
(+.f64 (*.f64 (sin.f64 th) (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360))) (fma.f64 (pow.f64 kx 5) (*.f64 (sin.f64 th) 31/15120) (/.f64 (sin.f64 th) kx)))

localize15.0ms (0%)

Local error

Found 3 expressions with local error:

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

Compiled 33 to 9 computations (72.7% saved)

series6.0ms (0%)

Counts
2 → 60
Calls

15 calls:

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

rewrite70.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
562×log-prod_binary64
373×prod-diff_binary64
316×pow-prod-down_binary64
293×pow2_binary64
206×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01026
121026
2289126
Stop Event
node limit
Counts
2 → 79
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (sin.f64 th))
Outputs
((#(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 (exp.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.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 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))))) (#(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 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (*.f64 (sin.f64 th) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (*.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) (sin.f64 th)) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.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 1 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (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 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) (pow.f64 (cbrt.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 *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2) (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (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 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (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))) (*.f64 (sin.f64 ky) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) 1) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(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 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))))) (#(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))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(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))) (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)) (/.f64 (sin.f64 th) (cbrt.f64 (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)) (/.f64 (sin.f64 ky) (cbrt.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 (*.f64 (sin.f64 ky) (sin.f64 th)) (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(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 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (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 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)) (/.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (cbrt.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)))) (/.f64 (sin.f64 th) (sqrt.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)))) (/.f64 (sin.f64 ky) (sqrt.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 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 2) (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (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 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 (/.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 (/.f64 (pow.f64 (*.f64 (sin.f64 ky) (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)) (*.f64 (sin.f64 ky) (sin.f64 th))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.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 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 (exp.f64 (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(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 cbrt.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 ky) (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 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 (log.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 +.f64 0 (*.f64 (sin.f64 ky) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (sin.f64 ky))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (sin.f64 ky)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.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)) 2) 1/2)))) (#(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 pow.f64 (/.f64 2 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) -1)))) (#(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 th)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.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 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))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) 2))))))

simplify88.0ms (0.2%)

Algorithm
egg-herbie
Rules
802×fma-def_binary64
506×associate-*l*_binary64
476×associate-*r*_binary64
341×fma-neg_binary64
277×times-frac_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01512151
14722129
216191974
372571974
Stop Event
node limit
Counts
139 → 120
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 (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
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (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 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 ky 3) (/.f64 (sin.f64 th) (/.f64 (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 (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 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (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 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 ky 3) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))))
(fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (fma.f64 (-.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120 (/.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 (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 (*.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 -1/5040 (sin.f64 th)) (sin.f64 kx)) (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 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (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 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 (*.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) -1/2) (/.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 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 ky 3))) (fma.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120) (fma.f64 1/2 (/.f64 (fma.f64 -1/6 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (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))))
(fma.f64 (-.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) 1/120 (/.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 (/.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 -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) (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 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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))))
(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 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) 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))))
(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 (pow.f64 th 5) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))) (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 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
(fma.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (+.f64 (*.f64 1/120 (pow.f64 th 5)) 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)))))
(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 (pow.f64 th 5) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))) (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 (sin.f64 ky) (*.f64 (pow.f64 th 7) (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 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))))
(+.f64 (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/5040 (pow.f64 th 7)) th))) (*.f64 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) (+.f64 (*.f64 1/120 (pow.f64 th 5)) (*.f64 -1/6 (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 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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 (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 (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 (*.f64 (sin.f64 th) -1/4) (pow.f64 (sin.f64 ky) 4))) (pow.f64 kx 4)))
(-.f64 (fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2))) (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 (-.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 (*.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 (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 (*.f64 (sin.f64 th) -1/4) (pow.f64 (sin.f64 ky) 4))) (pow.f64 kx 4)))
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2))) (-.f64 (fma.f64 (fma.f64 1/2 (*.f64 (-.f64 2/45 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2))) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2))) (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)) (*.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) 1/4) (+.f64 1/3 (/.f64 1/4 (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 kx) 2) (pow.f64 (sin.f64 ky) 2)))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.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 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (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 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))))
(*.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))
(fma.f64 (sin.f64 th) ky (*.f64 (sin.f64 th) (*.f64 (pow.f64 ky 3) -1/6)))
(*.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 1/120 (*.f64 (sin.f64 th) (pow.f64 ky 5)) (fma.f64 (sin.f64 th) ky (*.f64 (sin.f64 th) (*.f64 (pow.f64 ky 3) -1/6))))
(fma.f64 (sin.f64 th) (*.f64 -1/6 (pow.f64 ky 3)) (*.f64 (sin.f64 th) (+.f64 (*.f64 1/120 (pow.f64 ky 5)) 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))))
(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))))
(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 (sin.f64 th) ky (*.f64 (sin.f64 th) (*.f64 (pow.f64 ky 3) -1/6)))))
(+.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) (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 (sin.f64 ky) (pow.f64 th 3)) (*.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) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) 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)))))
(fma.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (fma.f64 (sin.f64 ky) th (*.f64 1/120 (*.f64 (sin.f64 ky) (pow.f64 th 5)))))
(fma.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (fma.f64 th (sin.f64 ky) (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 5) 1/120))))
(fma.f64 -1/6 (*.f64 (sin.f64 ky) (pow.f64 th 3)) (*.f64 (sin.f64 ky) (+.f64 (*.f64 1/120 (pow.f64 th 5)) th)))
(+.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 (sin.f64 ky) (pow.f64 th 3)) (fma.f64 (sin.f64 ky) th (fma.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 (sin.f64 ky) (pow.f64 th 3)) (fma.f64 th (sin.f64 ky) (fma.f64 1/120 (*.f64 (sin.f64 ky) (pow.f64 th 5)) (*.f64 (pow.f64 th 7) (*.f64 -1/5040 (sin.f64 ky))))))
(+.f64 (*.f64 (sin.f64 ky) (+.f64 (*.f64 -1/6 (pow.f64 th 3)) th)) (*.f64 (sin.f64 ky) (+.f64 (*.f64 1/120 (pow.f64 th 5)) (*.f64 -1/5040 (pow.f64 th 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))

localize30.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
0.3b
(pow.f64 (sin.f64 ky) 2)
1.5b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
4.1b
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))
Compiler

Compiled 73 to 41 computations (43.8% saved)

series23.0ms (0.1%)

Counts
3 → 24
Calls

21 calls:

TimeVariablePointExpression
9.0ms
kx
@inf
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
2.0ms
ky
@0
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
1.0ms
kx
@0
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
1.0ms
th
@0
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
1.0ms
th
@inf
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))

rewrite89.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
686×log-prod_binary64
623×prod-diff_binary64
258×pow1/3_binary64
254×expm1-udef_binary64
254×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01563
131441
2381841
Stop Event
node limit
Counts
3 → 87
Calls
Call 1
Inputs
(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)))) (*.f64 (sin.f64 ky) th))
(/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))
Outputs
((#(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 (*.f64 (cbrt.f64 (exp.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (cbrt.f64 (exp.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (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)))) (/.f64 1 (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (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 (/.f64 1 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 1 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2) -2))) (sqrt.f64 (/.f64 1 (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2) -2)) 1/2) (pow.f64 (/.f64 1 (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))) 1/2))))) (#(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 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 -1) (sqrt.f64 (neg.f64 (pow.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 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)) 1/2)))) (#(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 (pow.f64 (/.f64 1 (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 (/.f64 1 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 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 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(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 (/.f64 1 (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 (*.f64 2 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1/2))))) (#(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 +.f64 0 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (cbrt.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 ky) th) (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) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (sin.f64 ky) 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) 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) 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) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) (pow.f64 (*.f64 (sin.f64 ky) th) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 ky) th) 3) (pow.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (*.f64 (sin.f64 ky) th) (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) 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) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 3) (pow.f64 (*.f64 (sin.f64 ky) th) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 ky) th) 3) (pow.f64 (/.f64 1 (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) 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) 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) 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) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)))) (cbrt.f64 (exp.f64 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))) (cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))) (*.f64 (/.f64 1 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2) -2)) (/.f64 1 (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (*.f64 (/.f64 1 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (neg.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 1 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) 3) (/.f64 1 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 6) (pow.f64 (sin.f64 kx) 6))) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) 4) (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 (pow.f64 (sin.f64 ky) 4) (pow.f64 (sin.f64 kx) 4))) (-.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)) 2)) (/.f64 1 (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 1 (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 pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (neg.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (neg.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))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) 1))))))

simplify66.0ms (0.2%)

Algorithm
egg-herbie
Rules
721×distribute-rgt-in_binary64
719×distribute-lft-in_binary64
410×*-commutative_binary64
358×associate-+l+_binary64
278×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01811559
15331542
219421525
Stop Event
node limit
Counts
111 → 130
Calls
Call 1
Inputs
(/.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 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)) (*.f64 (sin.f64 kx) (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 -1/2 (*.f64 (sin.f64 kx) (*.f64 (+.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)))))) (pow.f64 ky 6)))) (*.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)) (*.f64 (sin.f64 kx) (pow.f64 ky 4)))))))
(/.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 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 (sin.f64 ky) (pow.f64 kx 4))))))
(+.f64 (/.f64 1 (sin.f64 ky)) (+.f64 (*.f64 -1/2 (*.f64 (+.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 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (sin.f64 ky) (pow.f64 kx 6)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 3))) (*.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 (sin.f64 ky) (pow.f64 kx 4)))))))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3)) (/.f64 (*.f64 th 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)) (*.f64 (sin.f64 kx) th))) (+.f64 (*.f64 1/12 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 1/120 (/.f64 th (sin.f64 kx))))) (pow.f64 ky 5)) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3)) (/.f64 (*.f64 th 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)) (*.f64 (sin.f64 kx) th))) (+.f64 (*.f64 1/12 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 1/120 (/.f64 th (sin.f64 kx))))) (pow.f64 ky 5)) (+.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)) (*.f64 (sin.f64 kx) th))) (+.f64 (*.f64 -1/240 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1/5040 (/.f64 th (sin.f64 kx))) (*.f64 -1/2 (*.f64 (sin.f64 kx) (*.f64 (+.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)))))) th)))))) (pow.f64 ky 7)) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3)) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
th
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th)
(+.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) (*.f64 (pow.f64 kx 4) th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th))
(+.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) (*.f64 (pow.f64 kx 4) th)))) (+.f64 (*.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) (*.f64 (pow.f64 kx 6) th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th)))
(/.f64 1 (pow.f64 (sin.f64 kx) 2))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (*.f64 -1 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 4))))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 4))) (*.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4))) (/.f64 1 (pow.f64 (sin.f64 kx) 6))) (pow.f64 ky 4))))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 kx) 6))) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 kx) 4))))) (pow.f64 ky 6))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 4))) (*.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4))) (/.f64 1 (pow.f64 (sin.f64 kx) 6))) (pow.f64 ky 4)))))
(/.f64 1 (pow.f64 (sin.f64 ky) 2))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 2)))
(+.f64 (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 2))))
(+.f64 (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 4))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 8)))) (pow.f64 kx 6))) (/.f64 1 (pow.f64 (sin.f64 ky) 2)))))
Outputs
(/.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 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)))
(+.f64 (/.f64 1 (sin.f64 kx)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 3))) (*.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)) (*.f64 (sin.f64 kx) (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 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))) (*.f64 (sin.f64 kx) (pow.f64 ky 4))))))
(+.f64 (/.f64 1 (sin.f64 kx)) (fma.f64 (*.f64 1/2 (+.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) (pow.f64 ky 4)) (/.f64 (*.f64 -1/2 (*.f64 ky ky)) (pow.f64 (sin.f64 kx) 3))))
(+.f64 (fma.f64 -1/2 (/.f64 ky (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) (/.f64 1 (sin.f64 kx))) (*.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 1/2 (*.f64 (sin.f64 kx) (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 -1/2 (*.f64 (sin.f64 kx) (*.f64 (+.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)))))) (pow.f64 ky 6)))) (*.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)) (*.f64 (sin.f64 kx) (pow.f64 ky 4)))))))
(+.f64 (/.f64 1 (sin.f64 kx)) (fma.f64 -1/2 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (*.f64 (sin.f64 kx) (*.f64 (+.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)))))) (pow.f64 ky 6))) (*.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))) (*.f64 (sin.f64 kx) (pow.f64 ky 4)))))))
(+.f64 (fma.f64 -1/2 (/.f64 ky (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) (/.f64 1 (sin.f64 kx))) (fma.f64 -1/2 (*.f64 (sin.f64 kx) (*.f64 (+.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)))) (pow.f64 ky 6))) (*.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 (*.f64 (sin.f64 kx) (pow.f64 ky 4)) 1/2))))
(+.f64 (fma.f64 -1/2 (/.f64 ky (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) (/.f64 1 (sin.f64 kx))) (*.f64 (sin.f64 kx) (+.f64 (*.f64 (pow.f64 ky 4) (+.f64 (*.f64 1/2 (-.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 (pow.f64 (sin.f64 kx) 6)))) (*.f64 -1/2 (*.f64 (+.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)))) (pow.f64 ky 6))))))
(/.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 -1/2 (/.f64 (*.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 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 (sin.f64 ky) (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 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 (sin.f64 ky) (pow.f64 kx 4))))))
(+.f64 (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 3) kx)) (/.f64 1 (sin.f64 ky))) (*.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 (*.f64 (sin.f64 ky) (pow.f64 kx 4)) 1/2)))
(+.f64 (/.f64 1 (sin.f64 ky)) (fma.f64 (+.f64 (/.f64 1/6 (pow.f64 (sin.f64 ky) 4)) (*.f64 1/2 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2)))) (*.f64 (sin.f64 ky) (pow.f64 kx 4)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 ky) 3) (*.f64 kx kx)))))
(+.f64 (/.f64 1 (sin.f64 ky)) (+.f64 (*.f64 -1/2 (*.f64 (+.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 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (sin.f64 ky) (pow.f64 kx 6)))) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 3))) (*.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 (sin.f64 ky) (pow.f64 kx 4)))))))
(+.f64 (/.f64 1 (sin.f64 ky)) (fma.f64 -1/2 (*.f64 (+.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 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (*.f64 (sin.f64 ky) (pow.f64 kx 6))) (fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 3)) (*.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 (sin.f64 ky) (pow.f64 kx 4)))))))
(+.f64 (/.f64 1 (sin.f64 ky)) (fma.f64 (*.f64 -1/2 (+.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 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (/.f64 2/45 (pow.f64 (sin.f64 ky) 4))))) (*.f64 (sin.f64 ky) (pow.f64 kx 6)) (fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 3) kx)) (*.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 (*.f64 (sin.f64 ky) (pow.f64 kx 4)) 1/2)))))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 3)) kx) (/.f64 1 (sin.f64 ky))) (*.f64 (sin.f64 ky) (+.f64 (*.f64 (pow.f64 kx 6) (+.f64 (*.f64 -1/2 (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 (/.f64 -1/45 (pow.f64 (sin.f64 ky) 4)) (/.f64 -1/3 (pow.f64 (sin.f64 ky) 6))))) (*.f64 (pow.f64 kx 4) (+.f64 (/.f64 1/6 (pow.f64 (sin.f64 ky) 4)) (*.f64 1/2 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))))))))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3)) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(fma.f64 (fma.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3) (/.f64 (*.f64 ky th) (sin.f64 kx)))
(fma.f64 (fma.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (/.f64 -1/6 (/.f64 (sin.f64 kx) th))) (pow.f64 ky 3) (*.f64 (/.f64 ky (sin.f64 kx)) th))
(fma.f64 (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) -1/6)) (pow.f64 ky 3) (*.f64 th (/.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)) (*.f64 (sin.f64 kx) th))) (+.f64 (*.f64 1/12 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 1/120 (/.f64 th (sin.f64 kx))))) (pow.f64 ky 5)) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3)) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(fma.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))) (*.f64 (sin.f64 kx) th)) (fma.f64 1/12 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (*.f64 (/.f64 th (sin.f64 kx)) 1/120))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3) (/.f64 (*.f64 ky th) (sin.f64 kx))))
(fma.f64 (fma.f64 1/2 (*.f64 (sin.f64 kx) (*.f64 th (+.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))))) (fma.f64 (/.f64 th (pow.f64 (sin.f64 kx) 3)) 1/12 (*.f64 (/.f64 th (sin.f64 kx)) 1/120))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (/.f64 -1/6 (/.f64 (sin.f64 kx) th))) (pow.f64 ky 3) (*.f64 (/.f64 ky (sin.f64 kx)) th)))
(fma.f64 (fma.f64 1/2 (*.f64 (sin.f64 kx) (*.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))) th)) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (/.f64 1/12 (pow.f64 (sin.f64 kx) 2)) 1/120))) (pow.f64 ky 5) (fma.f64 (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) -1/6)) (pow.f64 ky 3) (*.f64 th (/.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)) (*.f64 (sin.f64 kx) th))) (+.f64 (*.f64 1/12 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 1/120 (/.f64 th (sin.f64 kx))))) (pow.f64 ky 5)) (+.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)) (*.f64 (sin.f64 kx) th))) (+.f64 (*.f64 -1/240 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1/5040 (/.f64 th (sin.f64 kx))) (*.f64 -1/2 (*.f64 (sin.f64 kx) (*.f64 (+.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)))))) th)))))) (pow.f64 ky 7)) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3)) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(fma.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))) (*.f64 (sin.f64 kx) th)) (fma.f64 1/12 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (*.f64 (/.f64 th (sin.f64 kx)) 1/120))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/12 (*.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) th)) (fma.f64 -1/240 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/5040 (/.f64 th (sin.f64 kx)) (*.f64 -1/2 (*.f64 (sin.f64 kx) (*.f64 (+.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)))))) th)))))) (pow.f64 ky 7) (fma.f64 (fma.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3) (/.f64 (*.f64 ky th) (sin.f64 kx)))))
(fma.f64 (fma.f64 1/2 (*.f64 (sin.f64 kx) (*.f64 th (+.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))))) (fma.f64 (/.f64 th (pow.f64 (sin.f64 kx) 3)) 1/12 (*.f64 (/.f64 th (sin.f64 kx)) 1/120))) (pow.f64 ky 5) (fma.f64 (fma.f64 (*.f64 (sin.f64 kx) (*.f64 th (+.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))))) -1/12 (fma.f64 (/.f64 th (pow.f64 (sin.f64 kx) 3)) -1/240 (fma.f64 -1/2 (*.f64 (+.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 (sin.f64 kx) th)) (/.f64 -1/5040 (/.f64 (sin.f64 kx) th))))) (pow.f64 ky 7) (fma.f64 (fma.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (/.f64 -1/6 (/.f64 (sin.f64 kx) th))) (pow.f64 ky 3) (*.f64 (/.f64 ky (sin.f64 kx)) th))))
(fma.f64 (fma.f64 1/2 (*.f64 (sin.f64 kx) (*.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))) th)) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (/.f64 1/12 (pow.f64 (sin.f64 kx) 2)) 1/120))) (pow.f64 ky 5) (fma.f64 (+.f64 (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (/.f64 -1/240 (pow.f64 (sin.f64 kx) 2)) -1/5040)) (*.f64 (sin.f64 kx) (+.f64 (*.f64 -1/2 (*.f64 (+.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)))) th)) (*.f64 th (+.f64 (/.f64 -1/12 (pow.f64 (sin.f64 kx) 6)) (*.f64 -1/12 (-.f64 (/.f64 1/3 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)))))))) (pow.f64 ky 7) (fma.f64 (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) -1/6)) (pow.f64 ky 3) (*.f64 th (/.f64 ky (sin.f64 kx))))))
th
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th)
(fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) th) (pow.f64 (sin.f64 ky) 2)) th)
(fma.f64 -1/2 (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) th)
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 th (pow.f64 (sin.f64 ky) 2))) th)
(+.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) (*.f64 (pow.f64 kx 4) th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th))
(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 (sin.f64 ky) 2) (*.f64 (pow.f64 kx 4) th))) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) th) (pow.f64 (sin.f64 ky) 2)) th))
(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 (sin.f64 ky) 2) (*.f64 (pow.f64 kx 4) th))) (fma.f64 -1/2 (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) th))
(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 (sin.f64 ky) 2) (*.f64 (pow.f64 kx 4) th))) (fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 th (pow.f64 (sin.f64 ky) 2))) th))
(+.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) (*.f64 (pow.f64 kx 4) th)))) (+.f64 (*.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) (*.f64 (pow.f64 kx 6) th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th)))
(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 (sin.f64 ky) 2) (*.f64 (pow.f64 kx 4) th))) (fma.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) (*.f64 (pow.f64 kx 6) th))) (fma.f64 -1/2 (/.f64 (*.f64 (*.f64 kx kx) th) (pow.f64 (sin.f64 ky) 2)) th)))
(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 (sin.f64 ky) 2) (*.f64 (pow.f64 kx 4) th))) (fma.f64 (*.f64 -1/2 (+.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 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (/.f64 2/45 (pow.f64 (sin.f64 ky) 4))))) (*.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 (pow.f64 kx 6) th)) (fma.f64 -1/2 (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) 2)) (*.f64 kx kx)) th)))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 th (pow.f64 (sin.f64 ky) 2))) th) (*.f64 (pow.f64 (sin.f64 ky) 2) (+.f64 (*.f64 (*.f64 (pow.f64 kx 4) th) (+.f64 (/.f64 1/6 (pow.f64 (sin.f64 ky) 4)) (*.f64 1/2 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 3)) 2))))) (*.f64 (*.f64 (pow.f64 kx 6) th) (+.f64 (*.f64 -1/2 (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 (/.f64 -1/45 (pow.f64 (sin.f64 ky) 4)) (/.f64 -1/3 (pow.f64 (sin.f64 ky) 6))))))))
(/.f64 1 (pow.f64 (sin.f64 kx) 2))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (*.f64 -1 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 4))))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (neg.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 4))))
(-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (/.f64 ky (/.f64 (pow.f64 (sin.f64 kx) 4) ky)))
(-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (*.f64 (/.f64 ky (pow.f64 (sin.f64 kx) 4)) ky))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 4))) (*.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4))) (/.f64 1 (pow.f64 (sin.f64 kx) 6))) (pow.f64 ky 4))))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 4)) (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (/.f64 1/3 (pow.f64 (sin.f64 kx) 4))) (pow.f64 ky 4))))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (fma.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (/.f64 1/3 (pow.f64 (sin.f64 kx) 4))) (pow.f64 ky 4) (/.f64 (neg.f64 (*.f64 ky ky)) (pow.f64 (sin.f64 kx) 4))))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (fma.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (/.f64 1/3 (pow.f64 (sin.f64 kx) 4))) (pow.f64 ky 4) (/.f64 (*.f64 ky (neg.f64 ky)) (pow.f64 (sin.f64 kx) 4))))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 kx) 6))) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 kx) 4))))) (pow.f64 ky 6))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 4))) (*.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 kx) 4))) (/.f64 1 (pow.f64 (sin.f64 kx) 6))) (pow.f64 ky 4)))))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (fma.f64 -1 (*.f64 (pow.f64 ky 6) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 kx) 6)) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (/.f64 2/45 (pow.f64 (sin.f64 kx) 4))))) (fma.f64 -1 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 4)) (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (/.f64 1/3 (pow.f64 (sin.f64 kx) 4))) (pow.f64 ky 4)))))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (-.f64 (fma.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (/.f64 1/3 (pow.f64 (sin.f64 kx) 4))) (pow.f64 ky 4) (/.f64 (neg.f64 (*.f64 ky ky)) (pow.f64 (sin.f64 kx) 4))) (*.f64 (pow.f64 ky 6) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 kx) 6)) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (/.f64 2/45 (pow.f64 (sin.f64 kx) 4)))))))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (-.f64 (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (/.f64 1/3 (pow.f64 (sin.f64 kx) 4))) (pow.f64 ky 4)) (+.f64 (*.f64 (/.f64 ky (pow.f64 (sin.f64 kx) 4)) ky) (*.f64 (pow.f64 ky 6) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 kx) 6)) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (/.f64 2/45 (pow.f64 (sin.f64 kx) 4))))))))
(/.f64 1 (pow.f64 (sin.f64 ky) 2))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 2)))
(fma.f64 -1 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 4)) (/.f64 1 (pow.f64 (sin.f64 ky) 2)))
(-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 2)) (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 4) kx)))
(+.f64 (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 2))))
(fma.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 kx 4) (fma.f64 -1 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 4)) (/.f64 1 (pow.f64 (sin.f64 ky) 2))))
(fma.f64 (pow.f64 kx 4) (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 2)) (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 4) kx))))
(+.f64 (*.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 6)) (*.f64 1/3 (/.f64 1 (pow.f64 (sin.f64 ky) 4)))) (pow.f64 kx 4)) (+.f64 (*.f64 -1 (/.f64 (pow.f64 kx 2) (pow.f64 (sin.f64 ky) 4))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 (sin.f64 ky) 4))) (/.f64 1 (pow.f64 (sin.f64 ky) 8)))) (pow.f64 kx 6))) (/.f64 1 (pow.f64 (sin.f64 ky) 2)))))
(fma.f64 (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (pow.f64 kx 4) (fma.f64 -1 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 4)) (fma.f64 -1 (*.f64 (pow.f64 kx 6) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))) (/.f64 1 (pow.f64 (sin.f64 ky) 2)))))
(fma.f64 (pow.f64 kx 4) (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (-.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 2)) (*.f64 (pow.f64 kx 6) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (/.f64 1 (pow.f64 (sin.f64 ky) 8)))))) (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 4) kx))))
(-.f64 (fma.f64 (pow.f64 kx 4) (+.f64 (/.f64 1/3 (pow.f64 (sin.f64 ky) 4)) (/.f64 1 (pow.f64 (sin.f64 ky) 6))) (-.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 2)) (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 4) kx)))) (*.f64 (pow.f64 kx 6) (+.f64 (/.f64 2/3 (pow.f64 (sin.f64 ky) 6)) (+.f64 (/.f64 2/45 (pow.f64 (sin.f64 ky) 4)) (/.f64 1 (pow.f64 (sin.f64 ky) 8))))))

eval330.0ms (0.9%)

Compiler

Compiled 15056 to 6851 computations (54.5% saved)

prune810.0ms (2.1%)

Pruning

44 alts after pruning (40 fresh and 4 done)

PrunedKeptTotal
New57835613
Fresh9514
Picked101
Done145
Total58944633
Error
0b
Counts
633 → 44
Alt Table
Click to see full alt table
StatusErrorProgram
52.5b
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
54.6b
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
50.8b
(*.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
0.3b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
35.7b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
58.2b
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th)
56.7b
th
44.5b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
49.1b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
53.9b
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
50.7b
(*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 2))) (*.f64 (sin.f64 ky) th))
49.2b
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
0.3b
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 (sin.f64 ky))))
49.1b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
48.7b
(sin.f64 th)
54.0b
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
32.7b
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
49.1b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
50.9b
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
9.4b
(*.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))
1.5b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))
39.9b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky)))) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
50.0b
(/.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)))
50.9b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
54.0b
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) th))
0.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
55.0b
(/.f64 (*.f64 ky th) (sin.f64 kx))
55.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
51.3b
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
15.5b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
48.7b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
57.9b
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
55.5b
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
35.7b
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
0.2b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
49.0b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
0.3b
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
49.1b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
45.3b
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
51.0b
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
1.6b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
54.4b
(exp.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
58.1b
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 th (pow.f64 (sin.f64 ky) 2))) th)
54.9b
(*.f64 th (/.f64 ky (sin.f64 kx)))
Compiler

Compiled 1146 to 813 computations (29.1% saved)

localize15.0ms (0%)

Local error

Found 3 expressions with local error:

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

Compiled 36 to 9 computations (75% saved)

series10.0ms (0%)

Counts
2 → 72
Calls

18 calls:

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

rewrite85.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 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (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) (/.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 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 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))) 1)))) (#(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 (sin.f64 th) (/.f64 (sin.f64 ky) (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 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (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 ky)) (*.f64 (sqrt.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 (*.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 ky)) (/.f64 1 (/.f64 (neg.f64 (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 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))))) (#(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 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (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 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sin.f64 ky) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 1 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) -2) (/.f64 (sin.f64 ky) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (cbrt.f64 (pow.f64 (/.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 (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2))) (/.f64 (sqrt.f64 (sin.f64 ky)) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) -1/2) (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) (/.f64 (cbrt.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) 1) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (neg.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 1) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (cbrt.f64 (pow.f64 (sin.f64 th) 2))) (cbrt.f64 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (sin.f64 th))) (sqrt.f64 (sin.f64 th)))))) (#(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 ky) (sin.f64 th))) -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 ky) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 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 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 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 ky) (/.f64 (neg.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 (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 (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 ky) 3) (pow.f64 (/.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 (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 ky) (sin.f64 th)))) -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 th)))))) (#(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 th)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))))) (#(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 th))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (/.f64 1 (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 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 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) -2)) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(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 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(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 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 1 (neg.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 th)) (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 th)))))) (#(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 th)))))) (#(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 (/.f64 (pow.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) 2) (cbrt.f64 (pow.f64 (sin.f64 th) 2))) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(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 th) 2))) (/.f64 (sqrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (cbrt.f64 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 th) -1/2) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.f64 (sin.f64 th))))))) (#(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 th))) (/.f64 (cbrt.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (sin.f64 th))))))) (#(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 (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 (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 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 2)))) (#(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 (exp.f64 1) (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(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 th) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (sin.f64 th) (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 th)))) 2)) (cbrt.f64 (log.f64 (/.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 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))) (sqrt.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (neg.f64 (sin.f64 th))))))) (#(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 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) 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 th) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.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 (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 (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 (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 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) 2))))) (#(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 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) 1) 1))))))

simplify75.0ms (0.2%)

Algorithm
egg-herbie
Rules
929×fma-def_binary64
674×associate-*l*_binary64
552×times-frac_binary64
529×associate-/l*_binary64
375×associate-/r*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01893066
16042668
222122485
Stop Event
node limit
Counts
176 → 153
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 kx) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.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)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (sin.f64 ky) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th))))
(+.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)) (*.f64 (sin.f64 th) (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)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th))
(+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/5040 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 1/720 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 th 5))) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
Outputs
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (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 -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 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (pow.f64 ky 3) (/.f64 (sin.f64 th) (/.f64 (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 (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 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (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 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (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 (/.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 (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 (*.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 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040) (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 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (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 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (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 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (/.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 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (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 (sin.f64 th) (pow.f64 (sin.f64 kx) 3)) -1/2)) (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))))
(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 (/.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 (/.f64 (sin.f64 th) (sin.f64 kx)) -1/5040 (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (-.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 (/.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 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 (/.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th))
(fma.f64 -1/2 (*.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (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 (*.f64 (sin.f64 th) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)))
(fma.f64 (neg.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 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 2) (*.f64 kx kx))) (sin.f64 th)))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (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 (*.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 (*.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 (*.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 (*.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 (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 (*.f64 kx kx) (pow.f64 (sin.f64 ky) 2)) (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 (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (-.f64 2/45 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2)))) (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 -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))))) (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 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(+.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 -1/6 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 th (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 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 th (sin.f64 ky)))))
(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 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))) (*.f64 th (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
(fma.f64 -1/6 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))) (+.f64 th (*.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 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 (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 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))) (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 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 2))))) (+.f64 th (*.f64 (pow.f64 th 7) -1/5040))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) 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 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 (sin.f64 th) (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(*.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 kx) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (*.f64 (sin.f64 th) (sin.f64 kx))) (/.f64 (sin.f64 kx) (sin.f64 th)))
(fma.f64 1/2 (/.f64 ky (/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) ky)) (/.f64 (sin.f64 kx) (sin.f64 th)))
(fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 th)) (/.f64 ky (sin.f64 kx))) (/.f64 (sin.f64 kx) (sin.f64 th)))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (*.f64 (sin.f64 th) (sin.f64 kx))) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (/.f64 (pow.f64 ky 4) (sin.f64 th))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(fma.f64 1/2 (/.f64 ky (/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) ky)) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 4))) (/.f64 (sin.f64 kx) (sin.f64 th))))
(fma.f64 1/2 (*.f64 (/.f64 ky (sin.f64 th)) (/.f64 ky (sin.f64 kx))) (fma.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (/.f64 (pow.f64 ky 4) (sin.f64 th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 ky 2) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.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)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (pow.f64 ky 4)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(fma.f64 1/2 (/.f64 (*.f64 ky ky) (*.f64 (sin.f64 th) (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)) (/.f64 (pow.f64 ky 6) (sin.f64 th))) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (sin.f64 kx)) (/.f64 (pow.f64 ky 4) (sin.f64 th))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(fma.f64 1/2 (/.f64 ky (/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) ky)) (fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2))))) (sin.f64 kx)) (/.f64 (pow.f64 ky 6) (sin.f64 th))) (fma.f64 -1/2 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2)) (/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 4))) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(+.f64 (fma.f64 (/.f64 (fma.f64 -1/2 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/6) (sin.f64 kx)) (/.f64 (pow.f64 ky 4) (sin.f64 th)) (/.f64 (sin.f64 kx) (sin.f64 th))) (*.f64 (/.f64 1/2 (sin.f64 kx)) (+.f64 (/.f64 ky (/.f64 (sin.f64 th) ky)) (*.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))) (/.f64 (pow.f64 ky 6) (sin.f64 th))))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))
(fma.f64 1/2 (/.f64 (/.f64 (*.f64 kx kx) (sin.f64 th)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th)))
(fma.f64 1/2 (/.f64 (/.f64 kx (/.f64 (sin.f64 th) kx)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th)))
(fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (/.f64 (sin.f64 ky) (sin.f64 th)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 kx 4)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (/.f64 (*.f64 kx kx) (sin.f64 th)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (/.f64 kx (/.f64 (sin.f64 th) kx)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(fma.f64 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky)) (fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (/.f64 (sin.f64 ky) (sin.f64 th))))
(+.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)) (*.f64 (sin.f64 th) (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)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 kx 2) (*.f64 (sin.f64 th) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(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 th)) (/.f64 (pow.f64 kx 6) (sin.f64 ky))) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (/.f64 (*.f64 kx kx) (sin.f64 th)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(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 th)) (/.f64 (pow.f64 kx 6) (sin.f64 ky))) (fma.f64 -1/2 (*.f64 (/.f64 (+.f64 1/3 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2)) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky))) (fma.f64 1/2 (/.f64 (/.f64 kx (/.f64 (sin.f64 th) kx)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(fma.f64 1/2 (*.f64 (/.f64 (-.f64 2/45 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (pow.f64 (sin.f64 ky) 2))) (sin.f64 th)) (/.f64 (pow.f64 kx 6) (sin.f64 ky))) (fma.f64 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (sin.f64 th)) (/.f64 (pow.f64 kx 4) (sin.f64 ky)) (fma.f64 1/2 (/.f64 kx (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (/.f64 (sin.f64 ky) (sin.f64 th)))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 th))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)
(+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))
(fma.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 th) (*.f64 1/6 (*.f64 th (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))
(fma.f64 1/6 (*.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th))))
(fma.f64 -1 (*.f64 (pow.f64 th 3) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) -7/360)) (fma.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 th) (*.f64 1/6 (*.f64 th (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2)))))))
(-.f64 (fma.f64 1/6 (*.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 -7/360 (pow.f64 th 3))))
(fma.f64 (pow.f64 th 3) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 7/360) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (pow.f64 th 3))) (+.f64 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 th)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/5040 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 1/120 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 1/720 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (pow.f64 th 5))) (*.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) th)))))
(fma.f64 -1 (*.f64 (pow.f64 th 3) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) -7/360)) (fma.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 th) (fma.f64 -1 (*.f64 (pow.f64 th 5) (fma.f64 -1/5040 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (fma.f64 1/6 (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) -7/360) (*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) 1/720)))) (*.f64 1/6 (*.f64 th (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))))))))
(+.f64 (-.f64 (fma.f64 1/6 (*.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 -7/360 (pow.f64 th 3)))) (*.f64 (fma.f64 -1/5040 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (fma.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 1/720 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) -7/2160))) (neg.f64 (pow.f64 th 5))))
(-.f64 (fma.f64 (pow.f64 th 3) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 7/360) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th)))) (*.f64 (pow.f64 th 5) (fma.f64 -1/5040 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) -1/540))))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (sin.f64 th)))
(*.f64 (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 (sin.f64 ky) 2))) (/.f64 1 (sin.f64 th)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))

localize8.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(/.f64 ky (sin.f64 kx))
2.5b
(*.f64 th (/.f64 ky (sin.f64 kx)))
Compiler

Compiled 18 to 6 computations (66.7% saved)

series9.0ms (0%)

Counts
2 → 40
Calls

15 calls:

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

rewrite61.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
776×pow1_binary64
714×add-log-exp_binary64
714×log1p-expm1-u_binary64
714×expm1-log1p-u_binary64
697×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify44.0ms (0.1%)

Algorithm
egg-herbie
Rules
689×fma-neg_binary64
572×distribute-rgt-in_binary64
546×distribute-lft-in_binary64
544×fma-def_binary64
420×associate--r+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
060521
1187478
2641454
33226435
Stop Event
node limit
Counts
93 → 70
Calls
Call 1
Inputs
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) kx)
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (+.f64 (/.f64 (*.f64 th ky) kx) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 th ky)) (*.f64 -1/36 (*.f64 ky th))) (pow.f64 kx 3)))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 1/120 (*.f64 th ky)) (*.f64 -1/36 (*.f64 ky th)))) (+.f64 (*.f64 -1/5040 (*.f64 th ky)) (*.f64 1/720 (*.f64 ky th)))) (pow.f64 kx 5))) (+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (+.f64 (/.f64 (*.f64 th ky) kx) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 th ky)) (*.f64 -1/36 (*.f64 ky th))) (pow.f64 kx 3))))))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky kx)
(+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky)))
(+.f64 (/.f64 ky kx) (+.f64 (*.f64 1/6 (*.f64 kx ky)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 ky) (*.f64 1/120 ky)) (pow.f64 kx 3)))))
(+.f64 (/.f64 ky kx) (+.f64 (*.f64 1/6 (*.f64 kx ky)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 ky) (*.f64 1/120 ky)) (pow.f64 kx 3))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 ky) (*.f64 1/120 ky))) (+.f64 (*.f64 -1/5040 ky) (*.f64 1/720 ky))) (pow.f64 kx 5))))))
Outputs
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) kx)
(/.f64 th (/.f64 kx ky))
(/.f64 ky (/.f64 kx th))
(*.f64 th (/.f64 ky kx))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(fma.f64 1/6 (*.f64 (*.f64 th ky) kx) (/.f64 th (/.f64 kx ky)))
(fma.f64 1/6 (*.f64 th (*.f64 ky kx)) (/.f64 ky (/.f64 kx th)))
(*.f64 th (fma.f64 ky (*.f64 kx 1/6) (/.f64 ky kx)))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (+.f64 (/.f64 (*.f64 th ky) kx) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 th ky)) (*.f64 -1/36 (*.f64 ky th))) (pow.f64 kx 3)))))
(+.f64 (fma.f64 1/6 (*.f64 (*.f64 th ky) kx) (/.f64 th (/.f64 kx ky))) (neg.f64 (*.f64 (fma.f64 1/120 (*.f64 th ky) (*.f64 (*.f64 th ky) -1/36)) (pow.f64 kx 3))))
(fma.f64 1/6 (*.f64 th (*.f64 ky kx)) (fma.f64 (neg.f64 (*.f64 (*.f64 th ky) -7/360)) (pow.f64 kx 3) (/.f64 ky (/.f64 kx th))))
(fma.f64 (pow.f64 kx 3) (*.f64 (*.f64 th ky) 7/360) (*.f64 th (fma.f64 ky (*.f64 kx 1/6) (/.f64 ky kx))))
(fma.f64 th (/.f64 ky kx) (*.f64 (*.f64 th ky) (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 1/120 (*.f64 th ky)) (*.f64 -1/36 (*.f64 ky th)))) (+.f64 (*.f64 -1/5040 (*.f64 th ky)) (*.f64 1/720 (*.f64 ky th)))) (pow.f64 kx 5))) (+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (+.f64 (/.f64 (*.f64 th ky) kx) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 th ky)) (*.f64 -1/36 (*.f64 ky th))) (pow.f64 kx 3))))))
(fma.f64 -1 (*.f64 (fma.f64 1/6 (fma.f64 1/120 (*.f64 th ky) (*.f64 (*.f64 th ky) -1/36)) (fma.f64 -1/5040 (*.f64 th ky) (*.f64 (*.f64 th ky) 1/720))) (pow.f64 kx 5)) (+.f64 (fma.f64 1/6 (*.f64 (*.f64 th ky) kx) (/.f64 th (/.f64 kx ky))) (neg.f64 (*.f64 (fma.f64 1/120 (*.f64 th ky) (*.f64 (*.f64 th ky) -1/36)) (pow.f64 kx 3)))))
(-.f64 (fma.f64 1/6 (*.f64 th (*.f64 ky kx)) (fma.f64 (neg.f64 (*.f64 (*.f64 th ky) -7/360)) (pow.f64 kx 3) (/.f64 ky (/.f64 kx th)))) (*.f64 (fma.f64 1/6 (*.f64 (*.f64 th ky) -7/360) (*.f64 (*.f64 th ky) 1/840)) (pow.f64 kx 5)))
(-.f64 (fma.f64 (pow.f64 kx 3) (*.f64 (*.f64 th ky) 7/360) (*.f64 th (fma.f64 ky (*.f64 kx 1/6) (/.f64 ky kx)))) (*.f64 (fma.f64 th (*.f64 ky 1/720) (*.f64 (*.f64 th ky) -13/3780)) (pow.f64 kx 5)))
(-.f64 (fma.f64 th (/.f64 ky kx) (*.f64 (*.f64 th ky) (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360)))) (*.f64 (*.f64 th (*.f64 ky -31/15120)) (pow.f64 kx 5)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 th (/.f64 ky (sin.f64 kx)))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(/.f64 ky kx)
(+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky)))
(+.f64 (/.f64 ky kx) (*.f64 (*.f64 1/6 kx) ky))
(fma.f64 1/6 (*.f64 ky kx) (/.f64 ky kx))
(fma.f64 ky (*.f64 kx 1/6) (/.f64 ky kx))
(+.f64 (/.f64 ky kx) (+.f64 (*.f64 1/6 (*.f64 kx ky)) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 ky) (*.f64 1/120 ky)) (pow.f64 kx 3)))))
(+.f64 (/.f64 ky kx) (fma.f64 1/6 (*.f64 ky kx) (neg.f64 (*.f64 (pow.f64 kx 3) (*.f64 ky -7/360)))))
(-.f64 (fma.f64 1/6 (*.f64 ky kx) (/.f64 ky kx)) (*.f64 ky (*.f64 -7/360 (pow.f64 kx 3))))
(fma.f64 ky (*.f64 kx 1/6) (fma.f64 (pow.f64 kx 3) (*.f64 ky 7/360) (/.f64 ky kx)))
(+.f64 (/.f64 ky kx) (*.f64 ky (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360))))
(+.f64 (/.f64 ky kx) (+.f64 (*.f64 1/6 (*.f64 kx ky)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 ky) (*.f64 1/120 ky)) (pow.f64 kx 3))) (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 ky) (*.f64 1/120 ky))) (+.f64 (*.f64 -1/5040 ky) (*.f64 1/720 ky))) (pow.f64 kx 5))))))
(+.f64 (/.f64 ky kx) (fma.f64 1/6 (*.f64 ky kx) (fma.f64 -1 (*.f64 (pow.f64 kx 3) (*.f64 ky -7/360)) (neg.f64 (*.f64 (pow.f64 kx 5) (fma.f64 1/6 (*.f64 ky -7/360) (*.f64 ky 1/840)))))))
(+.f64 (/.f64 ky kx) (fma.f64 1/6 (*.f64 ky kx) (neg.f64 (fma.f64 (pow.f64 kx 3) (*.f64 ky -7/360) (*.f64 (pow.f64 kx 5) (fma.f64 ky 1/840 (*.f64 ky -7/2160)))))))
(-.f64 (fma.f64 ky (*.f64 kx 1/6) (/.f64 ky kx)) (fma.f64 ky (*.f64 (pow.f64 kx 3) -7/360) (*.f64 (pow.f64 kx 5) (*.f64 ky -31/15120))))
(fma.f64 ky (fma.f64 kx 1/6 (*.f64 (pow.f64 kx 3) 7/360)) (fma.f64 (pow.f64 kx 5) (*.f64 ky 31/15120) (/.f64 ky kx)))

localize13.0ms (0%)

Local error

Found 3 expressions with local error:

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

Compiled 28 to 12 computations (57.1% saved)

series9.0ms (0%)

Counts
3 → 44
Calls

18 calls:

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

rewrite79.0ms (0.2%)

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

Useful iterations: 0 (0.0ms)

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

simplify80.0ms (0.2%)

Algorithm
egg-herbie
Rules
671×cancel-sign-sub-inv_binary64
561×fma-def_binary64
319×fma-neg_binary64
285×distribute-rgt-in_binary64
278×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
086697
1265688
2800661
33096615
Stop Event
node limit
Counts
103 → 91
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th)))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 ky) th)) (*.f64 -1/5040 (*.f64 (sin.f64 ky) th)))) (pow.f64 kx 5))) (/.f64 (*.f64 (sin.f64 ky) th) kx))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 th (pow.f64 ky 7)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(*.f64 th ky)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) th)) (*.f64 th ky)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 ky 7) th)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) th)) (*.f64 th ky))))
(/.f64 1 kx)
(+.f64 (*.f64 1/6 kx) (/.f64 1 kx))
(+.f64 (*.f64 1/6 kx) (+.f64 (*.f64 7/360 (pow.f64 kx 3)) (/.f64 1 kx)))
(+.f64 (*.f64 1/6 kx) (+.f64 (*.f64 31/15120 (pow.f64 kx 5)) (+.f64 (*.f64 7/360 (pow.f64 kx 3)) (/.f64 1 kx))))
Outputs
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx))
(fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (/.f64 (*.f64 (sin.f64 ky) th) kx))
(fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (*.f64 (/.f64 (sin.f64 ky) kx) th))
(*.f64 th (+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 kx (*.f64 (sin.f64 ky) 1/6))))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx)))
(fma.f64 -1 (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) -7/360) (pow.f64 kx 3)) (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (/.f64 (*.f64 (sin.f64 ky) th) kx)))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (*.f64 (/.f64 (sin.f64 ky) kx) th)) (*.f64 (*.f64 (sin.f64 ky) th) (*.f64 -7/360 (pow.f64 kx 3))))
(fma.f64 (pow.f64 kx 3) (*.f64 (*.f64 (sin.f64 ky) th) 7/360) (*.f64 th (+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 kx (*.f64 (sin.f64 ky) 1/6)))))
(fma.f64 (/.f64 (sin.f64 ky) kx) th (*.f64 (*.f64 (sin.f64 ky) th) (fma.f64 (pow.f64 kx 3) 7/360 (*.f64 kx 1/6))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th)))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 ky) th)) (*.f64 -1/5040 (*.f64 (sin.f64 ky) th)))) (pow.f64 kx 5))) (/.f64 (*.f64 (sin.f64 ky) th) kx))))
(fma.f64 -1 (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) -7/360) (pow.f64 kx 3)) (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (fma.f64 -1 (*.f64 (fma.f64 1/6 (*.f64 (*.f64 (sin.f64 ky) th) -7/360) (*.f64 (*.f64 (sin.f64 ky) th) 1/840)) (pow.f64 kx 5)) (/.f64 (*.f64 (sin.f64 ky) th) kx))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (-.f64 (*.f64 (/.f64 (sin.f64 ky) kx) th) (*.f64 (fma.f64 (*.f64 (sin.f64 ky) th) 1/840 (*.f64 (*.f64 (sin.f64 ky) th) -7/2160)) (pow.f64 kx 5)))) (*.f64 (*.f64 (sin.f64 ky) th) (*.f64 -7/360 (pow.f64 kx 3))))
(-.f64 (fma.f64 (pow.f64 kx 3) (*.f64 (*.f64 (sin.f64 ky) th) 7/360) (*.f64 th (+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 kx (*.f64 (sin.f64 ky) 1/6))))) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) -31/15120) (pow.f64 kx 5)))
(+.f64 (fma.f64 (pow.f64 kx 5) (*.f64 (*.f64 (sin.f64 ky) th) 31/15120) (*.f64 th (/.f64 (sin.f64 ky) kx))) (*.f64 (*.f64 (sin.f64 ky) th) (fma.f64 (pow.f64 kx 3) 7/360 (*.f64 kx 1/6))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(fma.f64 -1/6 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 3))) (/.f64 ky (/.f64 (sin.f64 kx) th)))
(fma.f64 -1/6 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 3)) (*.f64 (/.f64 th (sin.f64 kx)) ky))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 th (sin.f64 kx))) (/.f64 th (/.f64 (sin.f64 kx) ky)))
(*.f64 (/.f64 th (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(fma.f64 -1/6 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 3))) (fma.f64 1/120 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 5))) (/.f64 ky (/.f64 (sin.f64 kx) th))))
(fma.f64 -1/6 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 3)) (fma.f64 1/120 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 5)) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 th (sin.f64 kx))) (fma.f64 1/120 (/.f64 (pow.f64 ky 5) (/.f64 (sin.f64 kx) th)) (/.f64 th (/.f64 (sin.f64 kx) ky))))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 th (sin.f64 kx))) (*.f64 (/.f64 th (sin.f64 kx)) (fma.f64 1/120 (pow.f64 ky 5) ky)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 th (pow.f64 ky 7)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(fma.f64 -1/6 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 3))) (fma.f64 1/120 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 5))) (fma.f64 -1/5040 (/.f64 (*.f64 th (pow.f64 ky 7)) (sin.f64 kx)) (/.f64 ky (/.f64 (sin.f64 kx) th)))))
(fma.f64 -1/6 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 3)) (fma.f64 1/120 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 5)) (fma.f64 -1/5040 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 7)) (*.f64 (/.f64 th (sin.f64 kx)) ky))))
(fma.f64 1/120 (/.f64 (pow.f64 ky 5) (/.f64 (sin.f64 kx) th)) (fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 th (sin.f64 kx))) (fma.f64 -1/5040 (*.f64 (pow.f64 ky 7) (/.f64 th (sin.f64 kx))) (/.f64 th (/.f64 (sin.f64 kx) ky)))))
(+.f64 (*.f64 (/.f64 th (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky)) (*.f64 (/.f64 th (sin.f64 kx)) (fma.f64 -1/5040 (pow.f64 ky 7) (*.f64 1/120 (pow.f64 ky 5)))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 th ky)
(*.f64 ky th)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky))
(fma.f64 -1/6 (*.f64 th (pow.f64 ky 3)) (*.f64 ky th))
(*.f64 th (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(*.f64 th (fma.f64 -1/6 (pow.f64 ky 3) ky))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) th)) (*.f64 th ky)))
(fma.f64 -1/6 (*.f64 th (pow.f64 ky 3)) (fma.f64 1/120 (*.f64 th (pow.f64 ky 5)) (*.f64 ky th)))
(fma.f64 -1/6 (*.f64 th (pow.f64 ky 3)) (*.f64 th (+.f64 ky (*.f64 1/120 (pow.f64 ky 5)))))
(*.f64 th (+.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (*.f64 1/120 (pow.f64 ky 5))))
(*.f64 th (+.f64 ky (fma.f64 -1/6 (pow.f64 ky 3) (*.f64 1/120 (pow.f64 ky 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 ky 7) th)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) th)) (*.f64 th ky))))
(fma.f64 -1/6 (*.f64 th (pow.f64 ky 3)) (fma.f64 -1/5040 (*.f64 th (pow.f64 ky 7)) (fma.f64 1/120 (*.f64 th (pow.f64 ky 5)) (*.f64 ky th))))
(fma.f64 -1/6 (*.f64 th (pow.f64 ky 3)) (fma.f64 -1/5040 (*.f64 th (pow.f64 ky 7)) (*.f64 th (+.f64 ky (*.f64 1/120 (pow.f64 ky 5))))))
(*.f64 th (+.f64 (fma.f64 1/120 (pow.f64 ky 5) ky) (fma.f64 -1/6 (pow.f64 ky 3) (*.f64 -1/5040 (pow.f64 ky 7)))))
(*.f64 th (+.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (fma.f64 -1/5040 (pow.f64 ky 7) (*.f64 1/120 (pow.f64 ky 5)))))
(/.f64 1 kx)
(+.f64 (*.f64 1/6 kx) (/.f64 1 kx))
(fma.f64 1/6 kx (/.f64 1 kx))
(fma.f64 kx 1/6 (/.f64 1 kx))
(+.f64 (*.f64 1/6 kx) (+.f64 (*.f64 7/360 (pow.f64 kx 3)) (/.f64 1 kx)))
(fma.f64 1/6 kx (fma.f64 7/360 (pow.f64 kx 3) (/.f64 1 kx)))
(fma.f64 kx 1/6 (fma.f64 (pow.f64 kx 3) 7/360 (/.f64 1 kx)))
(+.f64 (*.f64 1/6 kx) (+.f64 (*.f64 31/15120 (pow.f64 kx 5)) (+.f64 (*.f64 7/360 (pow.f64 kx 3)) (/.f64 1 kx))))
(fma.f64 1/6 kx (fma.f64 31/15120 (pow.f64 kx 5) (fma.f64 7/360 (pow.f64 kx 3) (/.f64 1 kx))))
(fma.f64 kx 1/6 (fma.f64 (pow.f64 kx 5) 31/15120 (fma.f64 (pow.f64 kx 3) 7/360 (/.f64 1 kx))))
(fma.f64 kx 1/6 (fma.f64 (pow.f64 kx 3) 7/360 (fma.f64 (pow.f64 kx 5) 31/15120 (/.f64 1 kx))))

localize50.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 ky (*.f64 -1/6 (pow.f64 ky 3)))
0.2b
(/.f64 (sin.f64 th) (sin.f64 kx))
0.3b
(*.f64 -1/6 (pow.f64 ky 3))
1.8b
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
Compiler

Compiled 45 to 25 computations (44.4% saved)

series24.0ms (0.1%)

Counts
3 → 48
Calls

15 calls:

TimeVariablePointExpression
3.0ms
th
@inf
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
2.0ms
th
@0
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
2.0ms
kx
@-inf
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
2.0ms
ky
@inf
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
2.0ms
kx
@inf
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))

rewrite125.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
699×log-prod_binary64
368×pow2_binary64
347×fma-def_binary64
257×pow1/3_binary64
251×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify85.0ms (0.2%)

Algorithm
egg-herbie
Rules
714×fma-neg_binary64
428×fma-def_binary64
411×associate-*l*_binary64
391×associate-*r*_binary64
272×distribute-lft-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0711001
1220989
2798933
34459875
Stop Event
node limit
Counts
214 → 192
Calls
Call 1
Inputs
(/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) th) (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) th) (sin.f64 kx)) (*.f64 1/120 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) (pow.f64 th 5)) (sin.f64 kx)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) th) (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) (pow.f64 th 5)) (sin.f64 kx))) (*.f64 -1/5040 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) (pow.f64 th 7)) (sin.f64 kx))))))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
(+.f64 (/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) kx))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)))) (pow.f64 kx 3)))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) kx))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))) (*.f64 1/720 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))))) (pow.f64 kx 5))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)))) (pow.f64 kx 3))))))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
ky
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(*.f64 -1/6 (pow.f64 ky 3))
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(*.f64 -1/6 (pow.f64 ky 3))
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
Outputs
(/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) th) (sin.f64 kx))
(/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)))
(*.f64 (/.f64 th (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) (pow.f64 th 3)) (sin.f64 kx))) (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) th) (sin.f64 kx)))
(fma.f64 -1/6 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 kx) (pow.f64 th 3))) (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 kx) th)))
(fma.f64 -1/6 (*.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) (pow.f64 th 3)) (*.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) th))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx))) (*.f64 th (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx))))
(*.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) th) (sin.f64 kx)) (*.f64 1/120 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) (pow.f64 th 5)) (sin.f64 kx)))))
(+.f64 (fma.f64 -1/6 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 kx) (pow.f64 th 3))) (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 kx) th))) (/.f64 (*.f64 1/120 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (pow.f64 th 5))) (sin.f64 kx)))
(fma.f64 -1/6 (*.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) (pow.f64 th 3)) (fma.f64 1/120 (*.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) (pow.f64 th 5)) (*.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) th)))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx))) (fma.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) th (/.f64 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (*.f64 1/120 (pow.f64 th 5))) (sin.f64 kx))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx))) (*.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) (+.f64 th (*.f64 1/120 (pow.f64 th 5)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) (pow.f64 th 3)) (sin.f64 kx))) (+.f64 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) th) (sin.f64 kx)) (+.f64 (*.f64 1/120 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) (pow.f64 th 5)) (sin.f64 kx))) (*.f64 -1/5040 (/.f64 (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) (pow.f64 th 7)) (sin.f64 kx))))))
(+.f64 (fma.f64 -1/6 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 kx) (pow.f64 th 3))) (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 kx) th))) (fma.f64 1/120 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 kx) (pow.f64 th 5))) (*.f64 -1/5040 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 kx) (pow.f64 th 7))))))
(+.f64 (fma.f64 -1/6 (*.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) (pow.f64 th 3)) (*.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) th)) (fma.f64 1/120 (*.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) (pow.f64 th 5)) (*.f64 -1/5040 (*.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) (pow.f64 th 7)))))
(fma.f64 -1/6 (*.f64 (pow.f64 th 3) (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx))) (fma.f64 -1/5040 (*.f64 (pow.f64 th 7) (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx))) (fma.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) th (/.f64 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (*.f64 1/120 (pow.f64 th 5))) (sin.f64 kx)))))
(+.f64 (*.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3)))) (*.f64 (/.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 kx)) (+.f64 (*.f64 1/120 (pow.f64 th 5)) (*.f64 -1/5040 (pow.f64 th 7)))))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
(/.f64 (sin.f64 th) (/.f64 kx (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) kx) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) kx))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (fma.f64 -1/6 (pow.f64 ky 3) ky))) (*.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) kx)))
(fma.f64 1/6 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (*.f64 (sin.f64 th) kx)) (*.f64 (/.f64 (sin.f64 th) kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 kx (*.f64 (sin.f64 th) 1/6))))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 kx 1/6))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) kx))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)))) (pow.f64 kx 3)))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (fma.f64 -1/6 (pow.f64 ky 3) ky))) (fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) kx)) (neg.f64 (*.f64 (*.f64 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 th)) -7/360) (pow.f64 kx 3)))))
(-.f64 (fma.f64 1/6 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (*.f64 (sin.f64 th) kx)) (*.f64 (/.f64 (sin.f64 th) kx) (fma.f64 -1/6 (pow.f64 ky 3) ky))) (*.f64 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 th)) (*.f64 -7/360 (pow.f64 kx 3))))
(fma.f64 (/.f64 (sin.f64 th) kx) (fma.f64 -1/6 (pow.f64 ky 3) ky) (*.f64 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 th)) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (-.f64 (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 kx 1/6))) (*.f64 (sin.f64 th) (*.f64 (pow.f64 kx 3) -7/360))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky) kx))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))) (*.f64 1/720 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))))) (pow.f64 kx 5))) (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))) (*.f64 1/120 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)))) (pow.f64 kx 3))))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (fma.f64 -1/6 (pow.f64 ky 3) ky))) (fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) kx)) (*.f64 -1 (+.f64 (*.f64 (fma.f64 1/6 (*.f64 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 th)) -7/360) (*.f64 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 th)) 1/840)) (pow.f64 kx 5)) (*.f64 (*.f64 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 th)) -7/360) (pow.f64 kx 3))))))
(+.f64 (*.f64 (/.f64 (sin.f64 th) kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)) (fma.f64 1/6 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (*.f64 (sin.f64 th) kx)) (neg.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 th)) 1/840 (*.f64 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 th)) -7/2160)) (pow.f64 kx 5) (*.f64 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 th)) (*.f64 -7/360 (pow.f64 kx 3)))))))
(-.f64 (fma.f64 (/.f64 (sin.f64 th) kx) (fma.f64 -1/6 (pow.f64 ky 3) ky) (*.f64 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 th)) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360)))) (*.f64 (*.f64 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 th)) -31/15120) (pow.f64 kx 5)))
(fma.f64 (pow.f64 kx 5) (*.f64 (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (sin.f64 th)) 31/15120) (*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (-.f64 (+.f64 (/.f64 (sin.f64 th) kx) (*.f64 (sin.f64 th) (*.f64 kx 1/6))) (*.f64 (sin.f64 th) (*.f64 (pow.f64 kx 3) -7/360)))))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.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 th)) (sin.f64 kx))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))
(*.f64 -1/6 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 3))))
(*.f64 -1/6 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 3)))
(*.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 -1/6 (/.f64 (pow.f64 ky 3) (/.f64 (sin.f64 kx) (sin.f64 th))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx)))
(*.f64 -1/6 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (pow.f64 ky 3))))
(*.f64 -1/6 (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 ky 3)))
(*.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 -1/6 (/.f64 (pow.f64 ky 3) (/.f64 (sin.f64 kx) (sin.f64 th))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)) (*.f64 -1/6 (/.f64 (*.f64 (sin.f64 th) (pow.f64 ky 3)) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(*.f64 (fma.f64 -1/6 (pow.f64 ky 3) ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
ky
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(fma.f64 -1/6 (pow.f64 ky 3) ky)
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(fma.f64 -1/6 (pow.f64 ky 3) ky)
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(fma.f64 -1/6 (pow.f64 ky 3) ky)
(*.f64 -1/6 (pow.f64 ky 3))
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(fma.f64 -1/6 (pow.f64 ky 3) ky)
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(fma.f64 -1/6 (pow.f64 ky 3) ky)
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(fma.f64 -1/6 (pow.f64 ky 3) ky)
(*.f64 -1/6 (pow.f64 ky 3))
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(fma.f64 -1/6 (pow.f64 ky 3) ky)
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(fma.f64 -1/6 (pow.f64 ky 3) ky)
(+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)
(fma.f64 -1/6 (pow.f64 ky 3) ky)

localize86.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(pow.f64 (sin.f64 kx) 2)
0.4b
(/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))
1.5b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
17.7b
(sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2))))
Compiler

Compiled 68 to 32 computations (52.9% saved)

series36.0ms (0.1%)

Counts
3 → 84
Calls

21 calls:

TimeVariablePointExpression
5.0ms
ky
@inf
(sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2))))
3.0ms
kx
@0
(sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2))))
3.0ms
ky
@-inf
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
2.0ms
ky
@0
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
2.0ms
th
@0
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))

rewrite113.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
685×log-prod_binary64
634×prod-diff_binary64
258×pow1/3_binary64
254×expm1-udef_binary64
254×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify158.0ms (0.4%)

Algorithm
egg-herbie
Rules
617×associate-/l*_binary64
575×associate-/r*_binary64
526×distribute-rgt-in_binary64
525×distribute-lft-in_binary64
359×associate-+l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02343146
16992979
226182836
Stop Event
node limit
Counts
171 → 171
Calls
Call 1
Inputs
(/.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 1/2 (*.f64 (sin.f64 kx) (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (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 -1/2 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (pow.f64 (sin.f64 kx) 8))) (*.f64 (sin.f64 kx) (pow.f64 ky 6)))) (*.f64 1/2 (*.f64 (sin.f64 kx) (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (pow.f64 ky 4)))))))
(/.f64 1 ky)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3))) (/.f64 1 ky))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 ky 5))) (/.f64 1 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 6) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 7))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 ky 5))) (/.f64 1 ky))))
(/.f64 -1 ky)
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3))) (/.f64 1 ky))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 ky 5))) (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)))) (/.f64 1 ky))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 ky 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 6) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 7))))) (/.f64 1 ky))
(/.f64 1 ky)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 ky 3))) (/.f64 1 ky))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 ky 3))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 ky (pow.f64 kx 4)))) (/.f64 1 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 ky 3))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 ky (pow.f64 kx 4)))) (+.f64 (/.f64 1 ky) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 ky 6))) (+.f64 (/.f64 1 (pow.f64 ky 8)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (pow.f64 ky 2))) (*.f64 2/45 (/.f64 1 (pow.f64 ky 4)))))) (*.f64 ky (pow.f64 kx 6)))))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3)) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (/.f64 th (sin.f64 kx))) (+.f64 (*.f64 1/12 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 1/2 (*.f64 (sin.f64 kx) (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) th))))) (pow.f64 ky 5)) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3)) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/240 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1/5040 (/.f64 th (sin.f64 kx))) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (pow.f64 (sin.f64 kx) 8))) (*.f64 (sin.f64 kx) th))) (*.f64 -1/12 (*.f64 (sin.f64 kx) (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) th)))))) (pow.f64 ky 7)) (+.f64 (*.f64 (+.f64 (*.f64 1/120 (/.f64 th (sin.f64 kx))) (+.f64 (*.f64 1/12 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 1/2 (*.f64 (sin.f64 kx) (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) th))))) (pow.f64 ky 5)) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3)) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 3))) (/.f64 (*.f64 (sin.f64 ky) th) ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 3))) (+.f64 (/.f64 (*.f64 (sin.f64 ky) th) ky) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 5)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 kx) 6) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 7))) (+.f64 (/.f64 (*.f64 (sin.f64 ky) th) ky) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 5))))))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 3))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 3))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 kx) 6) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 7))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 3))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky)))))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 kx 2) th)) (pow.f64 ky 3))) (/.f64 (*.f64 (sin.f64 ky) th) ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 kx 2) th)) (pow.f64 ky 3))) (+.f64 (/.f64 (*.f64 (sin.f64 ky) th) ky) (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 (sin.f64 ky) (*.f64 (pow.f64 kx 4) (*.f64 th ky)))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 kx 2) th)) (pow.f64 ky 3))) (+.f64 (/.f64 (*.f64 (sin.f64 ky) th) ky) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (/.f64 1 (pow.f64 ky 8)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (pow.f64 ky 2))) (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 ky 4))) (*.f64 2/3 (/.f64 1 (pow.f64 ky 6)))))) (*.f64 (sin.f64 ky) (*.f64 th (*.f64 ky (pow.f64 kx 6)))))) (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 (sin.f64 ky) (*.f64 (pow.f64 kx 4) (*.f64 th ky))))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(/.f64 1 (pow.f64 (sin.f64 kx) 2))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (*.f64 -1 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 4))))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (+.f64 (/.f64 (pow.f64 ky 4) (pow.f64 (sin.f64 kx) 6)) (*.f64 -1 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 4)))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 ky 6) (pow.f64 (sin.f64 kx) 8))) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (+.f64 (/.f64 (pow.f64 ky 4) (pow.f64 (sin.f64 kx) 6)) (*.f64 -1 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 4))))))
(/.f64 1 (pow.f64 ky 2))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 2)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))) (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (/.f64 1 (pow.f64 ky 2))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))) (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (+.f64 (/.f64 1 (pow.f64 ky 2)) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 6) (pow.f64 ky 8))))))
(/.f64 1 (pow.f64 ky 2))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 2)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))) (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (/.f64 1 (pow.f64 ky 2))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))) (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (+.f64 (/.f64 1 (pow.f64 ky 2)) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 6) (pow.f64 ky 8))))))
(/.f64 1 (pow.f64 ky 2))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 kx 2) (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 2)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 kx 2) (pow.f64 ky 4))) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 kx 4)) (/.f64 1 (pow.f64 ky 2))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 ky 6))) (+.f64 (/.f64 1 (pow.f64 ky 8)) (*.f64 2/45 (/.f64 1 (pow.f64 ky 4))))) (pow.f64 kx 6))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 kx 2) (pow.f64 ky 4))) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 kx 4)) (/.f64 1 (pow.f64 ky 2)))))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
Outputs
(/.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 (pow.f64 (sin.f64 kx) 3)) ky) (/.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 1/2 (*.f64 (sin.f64 kx) (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (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 1/2 (*.f64 (*.f64 (sin.f64 kx) (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (pow.f64 ky 4)))))
(+.f64 (/.f64 1 (sin.f64 kx)) (fma.f64 -1/2 (/.f64 ky (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) (*.f64 1/2 (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (*.f64 (pow.f64 ky 4) (sin.f64 kx))))))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 ky (pow.f64 (sin.f64 kx) 3)) ky) (/.f64 1 (sin.f64 kx))) (*.f64 (*.f64 (sin.f64 kx) (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (*.f64 (pow.f64 ky 4) 1/2)))
(+.f64 (/.f64 1 (sin.f64 kx)) (+.f64 (*.f64 -1/2 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (pow.f64 (sin.f64 kx) 8))) (*.f64 (sin.f64 kx) (pow.f64 ky 6)))) (*.f64 1/2 (*.f64 (sin.f64 kx) (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (pow.f64 ky 4)))))))
(+.f64 (/.f64 1 (sin.f64 kx)) (fma.f64 -1/2 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/2 (*.f64 (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (pow.f64 (sin.f64 kx) 2)) (/.f64 1 (pow.f64 (sin.f64 kx) 8))) (*.f64 (sin.f64 kx) (pow.f64 ky 6))) (*.f64 1/2 (*.f64 (*.f64 (sin.f64 kx) (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2))) (pow.f64 ky 4))))))
(+.f64 (/.f64 1 (sin.f64 kx)) (fma.f64 -1/2 (/.f64 ky (/.f64 (pow.f64 (sin.f64 kx) 3) ky)) (fma.f64 1/2 (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (*.f64 (pow.f64 ky 4) (sin.f64 kx))) (*.f64 (fma.f64 -1/2 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (/.f64 (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (pow.f64 (sin.f64 kx) 8))) (*.f64 (*.f64 (sin.f64 kx) (pow.f64 ky 6)) -1/2)))))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 ky (pow.f64 (sin.f64 kx) 3)) ky) (/.f64 1 (sin.f64 kx))) (*.f64 (sin.f64 kx) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (pow.f64 ky 4))) (*.f64 (+.f64 (/.f64 1/4 (/.f64 (pow.f64 (sin.f64 kx) 2) (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)))) (/.f64 -1/2 (pow.f64 (sin.f64 kx) 8))) (pow.f64 ky 6)))))
(/.f64 1 ky)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3))) (/.f64 1 ky))
(fma.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (/.f64 1 ky))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 ky 5))) (/.f64 1 ky)))
(fma.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (fma.f64 -1/2 (/.f64 (fma.f64 -1 (pow.f64 (sin.f64 kx) 4) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 ky 5)) (/.f64 1 ky)))
(fma.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) 1/4) (pow.f64 (sin.f64 kx) 4)) (pow.f64 ky 5)) (/.f64 1 ky)))
(fma.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (fma.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) -3/4) (pow.f64 ky 5)) (/.f64 1 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 6) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 7))) (+.f64 (*.f64 -1/2 (/.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 ky 5))) (/.f64 1 ky))))
(fma.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 6) (*.f64 1/2 (*.f64 (pow.f64 (sin.f64 kx) 2) (fma.f64 -1 (pow.f64 (sin.f64 kx) 4) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2))))) (pow.f64 ky 7)) (fma.f64 -1/2 (/.f64 (fma.f64 -1 (pow.f64 (sin.f64 kx) 4) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 ky 5)) (/.f64 1 ky))))
(fma.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (fma.f64 -1/2 (/.f64 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 kx) 2) (-.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) 1/4) (pow.f64 (sin.f64 kx) 4))) (pow.f64 (sin.f64 kx) 6)) (pow.f64 ky 7)) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) 1/4) (pow.f64 (sin.f64 kx) 4)) (pow.f64 ky 5)) (/.f64 1 ky))))
(+.f64 (*.f64 -1/2 (+.f64 (/.f64 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (pow.f64 (sin.f64 kx) 4) -3/4)) (pow.f64 (sin.f64 kx) 6)) (pow.f64 ky 7)) (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) -3/4) (pow.f64 ky 5))))) (/.f64 1 ky))
(/.f64 -1 ky)
(-.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3))) (/.f64 1 ky))
(fma.f64 1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (/.f64 -1 ky))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 ky 5))) (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)))) (/.f64 1 ky))
(-.f64 (*.f64 1/2 (+.f64 (/.f64 (fma.f64 -1 (pow.f64 (sin.f64 kx) 4) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 ky 5)) (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)))) (/.f64 1 ky))
(fma.f64 1/2 (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) 1/4) (pow.f64 (sin.f64 kx) 4)) (pow.f64 ky 5))) (/.f64 -1 ky))
(fma.f64 1/2 (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) -3/4) (pow.f64 ky 5))) (/.f64 -1 ky))
(-.f64 (+.f64 (*.f64 1/2 (/.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 ky 5))) (+.f64 (*.f64 1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3))) (*.f64 1/2 (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 6) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 (sin.f64 kx) 2)))) (pow.f64 ky 7))))) (/.f64 1 ky))
(-.f64 (fma.f64 1/2 (/.f64 (fma.f64 -1 (pow.f64 (sin.f64 kx) 4) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 ky 5)) (*.f64 1/2 (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 6) (*.f64 1/2 (*.f64 (pow.f64 (sin.f64 kx) 2) (fma.f64 -1 (pow.f64 (sin.f64 kx) 4) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2))))) (pow.f64 ky 7))))) (/.f64 1 ky))
(fma.f64 1/2 (/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) 1/4) (pow.f64 (sin.f64 kx) 4)) (pow.f64 ky 5)) (fma.f64 1/2 (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (/.f64 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 kx) 2) (-.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) 1/4) (pow.f64 (sin.f64 kx) 4))) (pow.f64 (sin.f64 kx) 6)) (pow.f64 ky 7))) (/.f64 -1 ky)))
(fma.f64 1/2 (+.f64 (/.f64 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (pow.f64 (sin.f64 kx) 4) -3/4)) (pow.f64 (sin.f64 kx) 6)) (pow.f64 ky 7)) (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) -3/4) (pow.f64 ky 5)))) (/.f64 -1 ky))
(/.f64 1 ky)
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 ky 3))) (/.f64 1 ky))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 ky 3)) (/.f64 1 ky))
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 ky 3) kx)) (/.f64 1 ky))
(fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 ky 3)) kx) (/.f64 1 ky))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 ky 3))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 ky (pow.f64 kx 4)))) (/.f64 1 ky)))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 ky 3)) (fma.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 ky (pow.f64 kx 4))) (/.f64 1 ky)))
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 ky 3) kx)) (fma.f64 (*.f64 1/2 (-.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2))) (*.f64 ky (pow.f64 kx 4)) (/.f64 1 ky)))
(fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 ky 3)) kx) (fma.f64 (*.f64 1/2 (+.f64 (/.f64 1 (pow.f64 ky 6)) (-.f64 (/.f64 1/3 (pow.f64 ky 4)) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)))) (*.f64 ky (pow.f64 kx 4)) (/.f64 1 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (pow.f64 kx 2) (pow.f64 ky 3))) (+.f64 (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 ky (pow.f64 kx 4)))) (+.f64 (/.f64 1 ky) (*.f64 -1/2 (*.f64 (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 ky 6))) (+.f64 (/.f64 1 (pow.f64 ky 8)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (pow.f64 ky 2))) (*.f64 2/45 (/.f64 1 (pow.f64 ky 4)))))) (*.f64 ky (pow.f64 kx 6)))))))
(fma.f64 -1/2 (/.f64 (*.f64 kx kx) (pow.f64 ky 3)) (+.f64 (fma.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 ky (pow.f64 kx 4))) (/.f64 1 ky)) (*.f64 -1/2 (*.f64 (+.f64 (/.f64 2/3 (pow.f64 ky 6)) (+.f64 (/.f64 1 (pow.f64 ky 8)) (fma.f64 -1/2 (/.f64 (-.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 ky ky)) (/.f64 2/45 (pow.f64 ky 4))))) (*.f64 ky (pow.f64 kx 6))))))
(fma.f64 -1/2 (/.f64 kx (/.f64 (pow.f64 ky 3) kx)) (fma.f64 1/2 (*.f64 ky (*.f64 (pow.f64 kx 4) (-.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)))) (fma.f64 -1/2 (*.f64 (*.f64 ky (pow.f64 kx 6)) (+.f64 (/.f64 2/3 (pow.f64 ky 6)) (+.f64 (/.f64 1 (pow.f64 ky 8)) (fma.f64 -1/2 (/.f64 (-.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 ky ky)) (/.f64 2/45 (pow.f64 ky 4)))))) (/.f64 1 ky))))
(fma.f64 -1/2 (*.f64 (/.f64 kx (pow.f64 ky 3)) kx) (fma.f64 1/2 (*.f64 ky (*.f64 (pow.f64 kx 4) (+.f64 (/.f64 1 (pow.f64 ky 6)) (-.f64 (/.f64 1/3 (pow.f64 ky 4)) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2))))) (fma.f64 -1/2 (*.f64 (*.f64 ky (pow.f64 kx 6)) (+.f64 (/.f64 1 (pow.f64 ky 8)) (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1 (pow.f64 ky 6)) (-.f64 (/.f64 1/3 (pow.f64 ky 4)) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2))) (*.f64 ky ky)) (+.f64 (/.f64 2/3 (pow.f64 ky 6)) (/.f64 2/45 (pow.f64 ky 4)))))) (/.f64 1 ky))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2))))
(sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2))))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 ky (sin.f64 kx)) th)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3)) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(fma.f64 (fma.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3) (/.f64 th (/.f64 (sin.f64 kx) ky)))
(fma.f64 (pow.f64 ky 3) (fma.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (*.f64 (/.f64 ky (sin.f64 kx)) th))
(fma.f64 (pow.f64 ky 3) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) -1/6)) (*.f64 (/.f64 th (sin.f64 kx)) ky))
(+.f64 (*.f64 (+.f64 (*.f64 1/120 (/.f64 th (sin.f64 kx))) (+.f64 (*.f64 1/12 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 1/2 (*.f64 (sin.f64 kx) (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) th))))) (pow.f64 ky 5)) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3)) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(fma.f64 (fma.f64 1/120 (/.f64 th (sin.f64 kx)) (fma.f64 1/12 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (*.f64 1/2 (*.f64 (sin.f64 kx) (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) th))))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3) (/.f64 th (/.f64 (sin.f64 kx) ky))))
(fma.f64 (pow.f64 ky 5) (fma.f64 (/.f64 th (sin.f64 kx)) 1/120 (fma.f64 1/2 (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (*.f64 (sin.f64 kx) th)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) 3)) 1/12))) (fma.f64 (pow.f64 ky 3) (fma.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (*.f64 (/.f64 ky (sin.f64 kx)) th)))
(fma.f64 (pow.f64 ky 5) (fma.f64 (/.f64 th (sin.f64 kx)) 1/120 (fma.f64 1/2 (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (*.f64 (sin.f64 kx) th)) (/.f64 (*.f64 th 1/12) (pow.f64 (sin.f64 kx) 3)))) (fma.f64 (pow.f64 ky 3) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) -1/6)) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/240 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (+.f64 (*.f64 -1/5040 (/.f64 th (sin.f64 kx))) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (pow.f64 (sin.f64 kx) 8))) (*.f64 (sin.f64 kx) th))) (*.f64 -1/12 (*.f64 (sin.f64 kx) (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) th)))))) (pow.f64 ky 7)) (+.f64 (*.f64 (+.f64 (*.f64 1/120 (/.f64 th (sin.f64 kx))) (+.f64 (*.f64 1/12 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 1/2 (*.f64 (sin.f64 kx) (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) th))))) (pow.f64 ky 5)) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3))) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3)) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(fma.f64 (fma.f64 -1/240 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (fma.f64 -1/5040 (/.f64 th (sin.f64 kx)) (fma.f64 -1/2 (*.f64 (fma.f64 -1/2 (/.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (pow.f64 (sin.f64 kx) 2)) (/.f64 1 (pow.f64 (sin.f64 kx) 8))) (*.f64 (sin.f64 kx) th)) (*.f64 (*.f64 (sin.f64 kx) (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) th)) -1/12)))) (pow.f64 ky 7) (fma.f64 (fma.f64 1/120 (/.f64 th (sin.f64 kx)) (fma.f64 1/12 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (*.f64 1/2 (*.f64 (sin.f64 kx) (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) th))))) (pow.f64 ky 5) (fma.f64 (fma.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (pow.f64 ky 3) (/.f64 th (/.f64 (sin.f64 kx) ky)))))
(fma.f64 (pow.f64 ky 7) (fma.f64 (/.f64 th (pow.f64 (sin.f64 kx) 3)) -1/240 (fma.f64 (/.f64 th (sin.f64 kx)) -1/5040 (fma.f64 -1/2 (*.f64 (fma.f64 -1/2 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 8)) (/.f64 (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2) (pow.f64 (sin.f64 kx) 2))) (/.f64 1 (pow.f64 (sin.f64 kx) 8))) (*.f64 (sin.f64 kx) th)) (*.f64 (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (*.f64 (sin.f64 kx) th)) -1/12)))) (fma.f64 (pow.f64 ky 5) (fma.f64 (/.f64 th (sin.f64 kx)) 1/120 (fma.f64 1/2 (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (*.f64 (sin.f64 kx) th)) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) 3)) 1/12))) (fma.f64 (pow.f64 ky 3) (fma.f64 -1/2 (/.f64 th (pow.f64 (sin.f64 kx) 3)) (*.f64 -1/6 (/.f64 th (sin.f64 kx)))) (*.f64 (/.f64 ky (sin.f64 kx)) th))))
(fma.f64 (pow.f64 ky 7) (fma.f64 (/.f64 th (pow.f64 (sin.f64 kx) 3)) -1/240 (fma.f64 (/.f64 th (sin.f64 kx)) -1/5040 (*.f64 (sin.f64 kx) (+.f64 (*.f64 (+.f64 (/.f64 1/4 (/.f64 (pow.f64 (sin.f64 kx) 2) (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)))) (/.f64 -1/2 (pow.f64 (sin.f64 kx) 8))) th) (*.f64 -1/12 (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) th)))))) (fma.f64 (pow.f64 ky 5) (fma.f64 (/.f64 th (sin.f64 kx)) 1/120 (fma.f64 1/2 (*.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 6)) (pow.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 3)) 2)) (*.f64 (sin.f64 kx) th)) (/.f64 (*.f64 th 1/12) (pow.f64 (sin.f64 kx) 3)))) (fma.f64 (pow.f64 ky 3) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (/.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) -1/6)) (*.f64 (/.f64 th (sin.f64 kx)) ky))))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(/.f64 (sin.f64 ky) (/.f64 ky th))
(*.f64 (/.f64 (sin.f64 ky) ky) th)
(*.f64 (/.f64 th ky) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 3))) (/.f64 (*.f64 (sin.f64 ky) th) ky))
(fma.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (/.f64 (pow.f64 ky 3) (*.f64 th (sin.f64 ky)))) (/.f64 (sin.f64 ky) (/.f64 ky th)))
(fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (*.f64 th (sin.f64 ky))) (*.f64 (/.f64 (sin.f64 ky) ky) th))
(fma.f64 -1/2 (/.f64 th (/.f64 (pow.f64 ky 3) (*.f64 (pow.f64 (sin.f64 kx) 2) (sin.f64 ky)))) (*.f64 (/.f64 th ky) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 3))) (+.f64 (/.f64 (*.f64 (sin.f64 ky) th) ky) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 5)))))
(+.f64 (fma.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (/.f64 (pow.f64 ky 3) (*.f64 th (sin.f64 ky)))) (/.f64 (sin.f64 ky) (/.f64 ky th))) (*.f64 -1/2 (/.f64 (fma.f64 -1 (pow.f64 (sin.f64 kx) 4) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (/.f64 (pow.f64 ky 5) (*.f64 th (sin.f64 ky))))))
(fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (*.f64 th (sin.f64 ky))) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) 1/4) (pow.f64 (sin.f64 kx) 4)) (/.f64 (pow.f64 ky 5) (*.f64 th (sin.f64 ky)))) (*.f64 (/.f64 (sin.f64 ky) ky) th)))
(+.f64 (*.f64 (/.f64 th ky) (sin.f64 ky)) (*.f64 -1/2 (*.f64 (*.f64 th (sin.f64 ky)) (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) -3/4) (pow.f64 ky 5))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 kx) 6) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 7))) (+.f64 (/.f64 (*.f64 (sin.f64 ky) th) ky) (*.f64 -1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 5))))))
(fma.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (/.f64 (pow.f64 ky 3) (*.f64 th (sin.f64 ky)))) (fma.f64 -1/2 (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 6) (*.f64 1/2 (*.f64 (pow.f64 (sin.f64 kx) 2) (fma.f64 -1 (pow.f64 (sin.f64 kx) 4) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2))))) (/.f64 (pow.f64 ky 7) (*.f64 th (sin.f64 ky)))) (+.f64 (/.f64 (sin.f64 ky) (/.f64 ky th)) (*.f64 -1/2 (/.f64 (fma.f64 -1 (pow.f64 (sin.f64 kx) 4) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (/.f64 (pow.f64 ky 5) (*.f64 th (sin.f64 ky))))))))
(fma.f64 -1/2 (*.f64 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (*.f64 th (sin.f64 ky))) (fma.f64 -1/2 (/.f64 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 kx) 2) (-.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) 1/4) (pow.f64 (sin.f64 kx) 4))) (pow.f64 (sin.f64 kx) 6)) (/.f64 (pow.f64 ky 7) (*.f64 th (sin.f64 ky)))) (fma.f64 -1/2 (/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) 1/4) (pow.f64 (sin.f64 kx) 4)) (/.f64 (pow.f64 ky 5) (*.f64 th (sin.f64 ky)))) (*.f64 (/.f64 (sin.f64 ky) ky) th))))
(+.f64 (*.f64 -1/2 (+.f64 (*.f64 (*.f64 th (sin.f64 ky)) (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (/.f64 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (pow.f64 (sin.f64 kx) 4) -3/4)) (pow.f64 (sin.f64 kx) 6)) (pow.f64 ky 7)))) (*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) -3/4) (/.f64 (pow.f64 ky 5) th)) (sin.f64 ky)))) (*.f64 (/.f64 th ky) (sin.f64 ky)))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(neg.f64 (/.f64 (sin.f64 ky) (/.f64 ky th)))
(/.f64 (neg.f64 (*.f64 th (sin.f64 ky))) ky)
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 3))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky)))
(fma.f64 1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (/.f64 (pow.f64 ky 3) (*.f64 th (sin.f64 ky)))) (neg.f64 (/.f64 (sin.f64 ky) (/.f64 ky th))))
(-.f64 (*.f64 1/2 (*.f64 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (*.f64 th (sin.f64 ky)))) (*.f64 (/.f64 (sin.f64 ky) ky) th))
(-.f64 (*.f64 1/2 (/.f64 th (/.f64 (pow.f64 ky 3) (*.f64 (pow.f64 (sin.f64 kx) 2) (sin.f64 ky))))) (*.f64 (/.f64 th ky) (sin.f64 ky)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 3))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))))
(fma.f64 1/2 (/.f64 (fma.f64 -1 (pow.f64 (sin.f64 kx) 4) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (/.f64 (pow.f64 ky 5) (*.f64 th (sin.f64 ky)))) (fma.f64 1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (/.f64 (pow.f64 ky 3) (*.f64 th (sin.f64 ky)))) (neg.f64 (/.f64 (sin.f64 ky) (/.f64 ky th)))))
(-.f64 (*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) 1/4) (pow.f64 (sin.f64 kx) 4)) (/.f64 (pow.f64 ky 5) (*.f64 th (sin.f64 ky)))) (*.f64 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (*.f64 th (sin.f64 ky))))) (*.f64 (/.f64 (sin.f64 ky) ky) th))
(-.f64 (*.f64 1/2 (*.f64 (*.f64 th (sin.f64 ky)) (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) -3/4) (pow.f64 ky 5))))) (*.f64 (/.f64 th ky) (sin.f64 ky)))
(+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 kx) 6) (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 7))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 kx) 4)) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 5))) (+.f64 (*.f64 1/2 (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (sin.f64 ky) th)) (pow.f64 ky 3))) (*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky)))))
(fma.f64 1/2 (/.f64 (+.f64 (pow.f64 (sin.f64 kx) 6) (*.f64 1/2 (*.f64 (pow.f64 (sin.f64 kx) 2) (fma.f64 -1 (pow.f64 (sin.f64 kx) 4) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2))))) (/.f64 (pow.f64 ky 7) (*.f64 th (sin.f64 ky)))) (fma.f64 1/2 (/.f64 (fma.f64 -1 (pow.f64 (sin.f64 kx) 4) (pow.f64 (*.f64 -1/2 (pow.f64 (sin.f64 kx) 2)) 2)) (/.f64 (pow.f64 ky 5) (*.f64 th (sin.f64 ky)))) (fma.f64 1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (/.f64 (pow.f64 ky 3) (*.f64 th (sin.f64 ky)))) (neg.f64 (/.f64 (sin.f64 ky) (/.f64 ky th))))))
(fma.f64 1/2 (/.f64 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 kx) 2) (-.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) 1/4) (pow.f64 (sin.f64 kx) 4))) (pow.f64 (sin.f64 kx) 6)) (/.f64 (pow.f64 ky 7) (*.f64 th (sin.f64 ky)))) (-.f64 (*.f64 1/2 (+.f64 (/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) 1/4) (pow.f64 (sin.f64 kx) 4)) (/.f64 (pow.f64 ky 5) (*.f64 th (sin.f64 ky)))) (*.f64 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 3)) (*.f64 th (sin.f64 ky))))) (*.f64 (/.f64 (sin.f64 ky) ky) th)))
(-.f64 (*.f64 1/2 (+.f64 (*.f64 (*.f64 th (sin.f64 ky)) (+.f64 (/.f64 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 kx) 2) (*.f64 (pow.f64 (sin.f64 kx) 4) -3/4)) (pow.f64 (sin.f64 kx) 6)) (pow.f64 ky 7)) (/.f64 (*.f64 (pow.f64 (sin.f64 kx) 4) -3/4) (pow.f64 ky 5)))) (/.f64 th (/.f64 (pow.f64 ky 3) (*.f64 (pow.f64 (sin.f64 kx) 2) (sin.f64 ky)))))) (*.f64 (/.f64 th ky) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(/.f64 (sin.f64 ky) (/.f64 ky th))
(*.f64 (/.f64 (sin.f64 ky) ky) th)
(*.f64 (/.f64 th ky) (sin.f64 ky))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 kx 2) th)) (pow.f64 ky 3))) (/.f64 (*.f64 (sin.f64 ky) th) ky))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 ky) (*.f64 (*.f64 kx kx) th)) (pow.f64 ky 3)) (/.f64 (sin.f64 ky) (/.f64 ky th)))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 ky) (pow.f64 ky 3)) (*.f64 kx (*.f64 kx th))) (*.f64 (/.f64 (sin.f64 ky) ky) th))
(fma.f64 -1/2 (/.f64 (sin.f64 ky) (/.f64 (pow.f64 ky 3) (*.f64 kx (*.f64 kx th)))) (*.f64 (/.f64 th ky) (sin.f64 ky)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 kx 2) th)) (pow.f64 ky 3))) (+.f64 (/.f64 (*.f64 (sin.f64 ky) th) ky) (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 (sin.f64 ky) (*.f64 (pow.f64 kx 4) (*.f64 th ky)))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 ky) (*.f64 (*.f64 kx kx) th)) (pow.f64 ky 3)) (/.f64 (sin.f64 ky) (/.f64 ky th))) (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 (sin.f64 ky) (*.f64 (pow.f64 kx 4) (*.f64 ky th))))))
(fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 ky) (pow.f64 ky 3)) (*.f64 kx (*.f64 kx th))) (fma.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 (pow.f64 kx 4) (*.f64 (*.f64 ky th) (sin.f64 ky)))) (*.f64 (/.f64 (sin.f64 ky) ky) th)))
(fma.f64 -1/2 (/.f64 (sin.f64 ky) (/.f64 (pow.f64 ky 3) (*.f64 kx (*.f64 kx th)))) (fma.f64 1/2 (*.f64 (+.f64 (/.f64 1 (pow.f64 ky 6)) (-.f64 (/.f64 1/3 (pow.f64 ky 4)) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2))) (*.f64 (pow.f64 kx 4) (*.f64 (*.f64 ky th) (sin.f64 ky)))) (*.f64 (/.f64 th ky) (sin.f64 ky))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 kx 2) th)) (pow.f64 ky 3))) (+.f64 (/.f64 (*.f64 (sin.f64 ky) th) ky) (+.f64 (*.f64 -1/2 (*.f64 (+.f64 (/.f64 1 (pow.f64 ky 8)) (+.f64 (*.f64 -1/2 (/.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (pow.f64 ky 2))) (+.f64 (*.f64 2/45 (/.f64 1 (pow.f64 ky 4))) (*.f64 2/3 (/.f64 1 (pow.f64 ky 6)))))) (*.f64 (sin.f64 ky) (*.f64 th (*.f64 ky (pow.f64 kx 6)))))) (*.f64 1/2 (*.f64 (-.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 (sin.f64 ky) (*.f64 (pow.f64 kx 4) (*.f64 th ky))))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 ky) (*.f64 (*.f64 kx kx) th)) (pow.f64 ky 3)) (/.f64 (sin.f64 ky) (/.f64 ky th))) (fma.f64 -1/2 (*.f64 (+.f64 (/.f64 1 (pow.f64 ky 8)) (+.f64 (fma.f64 -1/2 (/.f64 (-.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 ky ky)) (/.f64 2/45 (pow.f64 ky 4))) (/.f64 2/3 (pow.f64 ky 6)))) (*.f64 (sin.f64 ky) (*.f64 (*.f64 ky th) (pow.f64 kx 6)))) (*.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 (sin.f64 ky) (*.f64 (pow.f64 kx 4) (*.f64 ky th)))))))
(+.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 ky) (pow.f64 ky 3)) (*.f64 kx (*.f64 kx th))) (*.f64 (/.f64 (sin.f64 ky) ky) th)) (fma.f64 1/2 (*.f64 (-.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 (pow.f64 kx 4) (*.f64 (*.f64 ky th) (sin.f64 ky)))) (*.f64 (+.f64 (/.f64 2/3 (pow.f64 ky 6)) (+.f64 (/.f64 1 (pow.f64 ky 8)) (fma.f64 -1/2 (/.f64 (-.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)) (*.f64 ky ky)) (/.f64 2/45 (pow.f64 ky 4))))) (*.f64 (*.f64 (*.f64 (sin.f64 ky) (*.f64 ky th)) (pow.f64 kx 6)) -1/2))))
(+.f64 (fma.f64 -1/2 (/.f64 (sin.f64 ky) (/.f64 (pow.f64 ky 3) (*.f64 kx (*.f64 kx th)))) (*.f64 (/.f64 th ky) (sin.f64 ky))) (*.f64 (sin.f64 ky) (+.f64 (*.f64 (*.f64 1/2 (+.f64 (/.f64 1 (pow.f64 ky 6)) (-.f64 (/.f64 1/3 (pow.f64 ky 4)) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2)))) (*.f64 (pow.f64 kx 4) (*.f64 ky th))) (*.f64 (+.f64 (*.f64 (fma.f64 -1/2 (/.f64 (+.f64 (/.f64 1 (pow.f64 ky 6)) (-.f64 (/.f64 1/3 (pow.f64 ky 4)) (pow.f64 (/.f64 -1/2 (pow.f64 ky 3)) 2))) (*.f64 ky ky)) (+.f64 (/.f64 2/3 (pow.f64 ky 6)) (/.f64 2/45 (pow.f64 ky 4)))) -1/2) (/.f64 -1/2 (pow.f64 ky 8))) (*.f64 ky (*.f64 (pow.f64 kx 6) th))))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))) (*.f64 th (sin.f64 ky)))
(/.f64 1 (pow.f64 (sin.f64 kx) 2))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (*.f64 -1 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 4))))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (neg.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 4))))
(-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 4)))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (+.f64 (/.f64 (pow.f64 ky 4) (pow.f64 (sin.f64 kx) 6)) (*.f64 -1 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 4)))))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (+.f64 (neg.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 4))) (/.f64 (pow.f64 ky 4) (pow.f64 (sin.f64 kx) 6))))
(+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (-.f64 (/.f64 (pow.f64 ky 4) (pow.f64 (sin.f64 kx) 6)) (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 4))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (/.f64 (pow.f64 ky 4) (pow.f64 (sin.f64 kx) 6))) (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 4)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 ky 6) (pow.f64 (sin.f64 kx) 8))) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (+.f64 (/.f64 (pow.f64 ky 4) (pow.f64 (sin.f64 kx) 6)) (*.f64 -1 (/.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 4))))))
(fma.f64 -1 (/.f64 (pow.f64 ky 6) (pow.f64 (sin.f64 kx) 8)) (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (+.f64 (neg.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 4))) (/.f64 (pow.f64 ky 4) (pow.f64 (sin.f64 kx) 6)))))
(-.f64 (+.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (-.f64 (/.f64 (pow.f64 ky 4) (pow.f64 (sin.f64 kx) 6)) (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 4)))) (/.f64 (pow.f64 ky 6) (pow.f64 (sin.f64 kx) 8)))
(+.f64 (-.f64 (/.f64 1 (pow.f64 (sin.f64 kx) 2)) (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 4))) (-.f64 (/.f64 (pow.f64 ky 4) (pow.f64 (sin.f64 kx) 6)) (/.f64 (pow.f64 ky 6) (pow.f64 (sin.f64 kx) 8))))
(/.f64 1 (pow.f64 ky 2))
(/.f64 1 (*.f64 ky ky))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 2)))
(fma.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4)) (/.f64 1 (*.f64 ky ky)))
(-.f64 (/.f64 1 (*.f64 ky ky)) (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))) (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (/.f64 1 (pow.f64 ky 2))))
(fma.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4)) (+.f64 (/.f64 1 (*.f64 ky ky)) (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6))))
(-.f64 (+.f64 (/.f64 1 (*.f64 ky ky)) (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6))) (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4)))
(+.f64 (/.f64 1 (*.f64 ky ky)) (-.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))) (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (+.f64 (/.f64 1 (pow.f64 ky 2)) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 6) (pow.f64 ky 8))))))
(fma.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4)) (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (+.f64 (/.f64 1 (*.f64 ky ky)) (neg.f64 (/.f64 (pow.f64 (sin.f64 kx) 6) (pow.f64 ky 8))))))
(-.f64 (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (-.f64 (/.f64 1 (*.f64 ky ky)) (/.f64 (pow.f64 (sin.f64 kx) 6) (pow.f64 ky 8)))) (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4)))
(+.f64 (-.f64 (/.f64 1 (*.f64 ky ky)) (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))) (-.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (/.f64 (pow.f64 (sin.f64 kx) 6) (pow.f64 ky 8))))
(/.f64 1 (pow.f64 ky 2))
(/.f64 1 (*.f64 ky ky))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 2)))
(fma.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4)) (/.f64 1 (*.f64 ky ky)))
(-.f64 (/.f64 1 (*.f64 ky ky)) (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4)))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))) (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (/.f64 1 (pow.f64 ky 2))))
(fma.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4)) (+.f64 (/.f64 1 (*.f64 ky ky)) (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6))))
(-.f64 (+.f64 (/.f64 1 (*.f64 ky ky)) (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6))) (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4)))
(+.f64 (/.f64 1 (*.f64 ky ky)) (-.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))) (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (+.f64 (/.f64 1 (pow.f64 ky 2)) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 6) (pow.f64 ky 8))))))
(fma.f64 -1 (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4)) (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (+.f64 (/.f64 1 (*.f64 ky ky)) (neg.f64 (/.f64 (pow.f64 (sin.f64 kx) 6) (pow.f64 ky 8))))))
(-.f64 (+.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (-.f64 (/.f64 1 (*.f64 ky ky)) (/.f64 (pow.f64 (sin.f64 kx) 6) (pow.f64 ky 8)))) (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4)))
(+.f64 (-.f64 (/.f64 1 (*.f64 ky ky)) (/.f64 (pow.f64 (sin.f64 kx) 2) (pow.f64 ky 4))) (-.f64 (/.f64 (pow.f64 (sin.f64 kx) 4) (pow.f64 ky 6)) (/.f64 (pow.f64 (sin.f64 kx) 6) (pow.f64 ky 8))))
(/.f64 1 (pow.f64 ky 2))
(/.f64 1 (*.f64 ky ky))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 kx 2) (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 2)))
(fma.f64 -1 (/.f64 (*.f64 kx kx) (pow.f64 ky 4)) (/.f64 1 (*.f64 ky ky)))
(-.f64 (/.f64 1 (*.f64 ky ky)) (/.f64 kx (/.f64 (pow.f64 ky 4) kx)))
(-.f64 (/.f64 1 (*.f64 ky ky)) (*.f64 (/.f64 kx (pow.f64 ky 4)) kx))
(+.f64 (*.f64 -1 (/.f64 (pow.f64 kx 2) (pow.f64 ky 4))) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 kx 4)) (/.f64 1 (pow.f64 ky 2))))
(fma.f64 -1 (/.f64 (*.f64 kx kx) (pow.f64 ky 4)) (fma.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 kx 4) (/.f64 1 (*.f64 ky ky))))
(-.f64 (fma.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 kx 4) (/.f64 1 (*.f64 ky ky))) (/.f64 kx (/.f64 (pow.f64 ky 4) kx)))
(-.f64 (fma.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 kx 4) (/.f64 1 (*.f64 ky ky))) (*.f64 (/.f64 kx (pow.f64 ky 4)) kx))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 2/3 (/.f64 1 (pow.f64 ky 6))) (+.f64 (/.f64 1 (pow.f64 ky 8)) (*.f64 2/45 (/.f64 1 (pow.f64 ky 4))))) (pow.f64 kx 6))) (+.f64 (*.f64 -1 (/.f64 (pow.f64 kx 2) (pow.f64 ky 4))) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (/.f64 1 (pow.f64 ky 4))) (/.f64 1 (pow.f64 ky 6))) (pow.f64 kx 4)) (/.f64 1 (pow.f64 ky 2)))))
(fma.f64 -1 (*.f64 (pow.f64 kx 6) (+.f64 (/.f64 2/3 (pow.f64 ky 6)) (+.f64 (/.f64 1 (pow.f64 ky 8)) (/.f64 2/45 (pow.f64 ky 4))))) (fma.f64 -1 (/.f64 (*.f64 kx kx) (pow.f64 ky 4)) (fma.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 kx 4) (/.f64 1 (*.f64 ky ky)))))
(-.f64 (-.f64 (fma.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 kx 4) (/.f64 1 (*.f64 ky ky))) (/.f64 kx (/.f64 (pow.f64 ky 4) kx))) (*.f64 (pow.f64 kx 6) (+.f64 (/.f64 1 (pow.f64 ky 8)) (+.f64 (/.f64 2/3 (pow.f64 ky 6)) (/.f64 2/45 (pow.f64 ky 4))))))
(-.f64 (-.f64 (fma.f64 (+.f64 (/.f64 1/3 (pow.f64 ky 4)) (/.f64 1 (pow.f64 ky 6))) (pow.f64 kx 4) (/.f64 1 (*.f64 ky ky))) (*.f64 (/.f64 kx (pow.f64 ky 4)) kx)) (*.f64 (pow.f64 kx 6) (+.f64 (/.f64 1 (pow.f64 ky 8)) (+.f64 (/.f64 2/3 (pow.f64 ky 6)) (/.f64 2/45 (pow.f64 ky 4))))))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (pow.f64 ky 2) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))
(/.f64 1 (fma.f64 ky ky (pow.f64 (sin.f64 kx) 2)))

eval438.0ms (1.1%)

Compiler

Compiled 17798 to 8729 computations (51% saved)

prune311.0ms (0.8%)

Pruning

72 alts after pruning (64 fresh and 8 done)

PrunedKeptTotal
New76139800
Fresh102535
Picked101
Done088
Total77272844
Error
0b
Counts
844 → 72
Alt Table
Click to see full alt table
StatusErrorProgram
57.0b
(exp.f64 (log.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))))
50.8b
(*.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
0.3b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
35.7b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
52.5b
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
55.9b
(/.f64 (*.f64 (sin.f64 ky) th) kx)
57.2b
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
56.7b
th
44.5b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
47.7b
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 ky (sin.f64 kx)))
56.3b
(*.f64 th (/.f64 ky kx))
49.1b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
52.3b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) th))
57.6b
(pow.f64 (pow.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))) 3) 1/3)
0.3b
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 (sin.f64 ky))))
56.5b
(/.f64 (*.f64 ky th) kx)
54.9b
(/.f64 th (/.f64 (sin.f64 kx) ky))
55.0b
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
49.1b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
48.7b
(sin.f64 th)
54.0b
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
32.7b
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
59.4b
(*.f64 (/.f64 th ky) (sin.f64 ky))
55.0b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (fma.f64 (pow.f64 kx 4) -1/3 (*.f64 kx kx))))) (*.f64 (sin.f64 ky) th))
34.2b
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
57.7b
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 ky ky))) (*.f64 (sin.f64 ky) th))
55.0b
(/.f64 (*.f64 (sin.f64 ky) th) ky)
9.4b
(*.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))
1.5b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))
55.9b
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
34.5b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
39.9b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky)))) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
49.1b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
50.9b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
54.0b
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) th))
53.9b
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
55.4b
(*.f64 th (sqrt.f64 (pow.f64 (/.f64 ky (sin.f64 kx)) 2)))
55.0b
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))) 3)
0.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
54.0b
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 (sin.f64 ky) th))
59.3b
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
55.3b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
51.3b
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
15.5b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
47.7b
(*.f64 (/.f64 1 (hypot.f64 ky (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
48.7b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
57.4b
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/6 (pow.f64 ky 3)))
57.9b
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
56.4b
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
55.5b
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
55.0b
(*.f64 th (pow.f64 (cbrt.f64 (/.f64 ky (sin.f64 kx))) 3))
35.7b
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
58.9b
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
54.9b
(*.f64 (/.f64 th (sin.f64 kx)) ky)
54.6b
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
0.2b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
54.6b
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
53.9b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
58.9b
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
0.3b
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
49.1b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
45.3b
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
50.9b
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
54.0b
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
55.0b
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
57.1b
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
1.6b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
54.4b
(exp.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
58.1b
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 th (pow.f64 (sin.f64 ky) 2))) th)
56.8b
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
55.8b
(*.f64 th (/.f64 (sin.f64 ky) kx))
54.9b
(*.f64 th (/.f64 ky (sin.f64 kx)))
Compiler

Compiled 1745 to 1231 computations (29.5% saved)

localize18.0ms (0%)

Local error

Found 4 expressions with local error:

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

Compiled 45 to 17 computations (62.2% saved)

series8.0ms (0%)

Counts
3 → 64
Calls

18 calls:

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

rewrite76.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
617×log-prod_binary64
330×pow-prod-down_binary64
315×pow2_binary64
222×pow1/3_binary64
217×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01237
124537
2315337
Stop Event
node limit
Counts
3 → 119
Calls
Call 1
Inputs
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 (sin.f64 ky)))
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 (sin.f64 ky))))
(/.f64 1 (sin.f64 ky))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))) (#(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 (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 (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sin.f64 ky) (sqrt.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (neg.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 1) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (cbrt.f64 (pow.f64 (sin.f64 ky) 2))) (cbrt.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (neg.f64 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) -1) (neg.f64 (sin.f64 ky)))))) (#(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 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 2)))) (#(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 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3) (pow.f64 (sin.f64 ky) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(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 kx) (sin.f64 ky))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))))) (#(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 kx) (sin.f64 ky)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 th)) (/.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) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 2)) (*.f64 (cbrt.f64 (sin.f64 th)) (/.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) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 2) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(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 kx) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 th)) (/.f64 1 (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 2)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (cbrt.f64 (sin.f64 th)) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sqrt.f64 (sin.f64 th)) (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (/.f64 1 (sin.f64 ky))) (/.f64 (sqrt.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 2)) 1) (/.f64 (cbrt.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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 kx) (sin.f64 ky)) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 2)) (/.f64 1 (sin.f64 ky))) (/.f64 (cbrt.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) -2) (/.f64 (sin.f64 th) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 2)) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 2)) (cbrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (pow.f64 (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) 2)) (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) -1/2) (/.f64 (sin.f64 th) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (sin.f64 th) 2)) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) (/.f64 (cbrt.f64 (sin.f64 th)) (sqrt.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 1) (sin.f64 ky))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) -1) (neg.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 kx) (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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) (/.f64 (sin.f64 th) (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) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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)) (*.f64 (sin.f64 th) (sin.f64 ky))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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)) (*.f64 (sin.f64 th) (sin.f64 ky))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 th) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (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 kx) (sin.f64 ky)))) 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 kx) (sin.f64 ky)))))))) (#(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 kx) (sin.f64 ky)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) 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 kx) (sin.f64 ky)))))) 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 kx) (sin.f64 ky)))))) 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 kx) (sin.f64 ky)))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) (sin.f64 ky)))) -1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 1 (sin.f64 ky)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 1 (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (sin.f64 ky))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 1 (sin.f64 ky))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 1 (sin.f64 ky)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sin.f64 ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (sin.f64 ky))) (cbrt.f64 (pow.f64 (sin.f64 ky) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 ky) -2)) (/.f64 1 (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 ky) -1/2) (pow.f64 (sin.f64 ky) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (neg.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) -2) (/.f64 1 (cbrt.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 ky) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (sin.f64 ky)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 ky) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 ky) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 ky) 2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 ky) 3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (cbrt.f64 (sin.f64 ky))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 ky)) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 ky) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 ky)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 ky) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 1 (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 ky) -3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 1 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (sin.f64 ky))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 ky)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (sin.f64 ky))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) -3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (cbrt.f64 (sin.f64 ky)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 -1/2 (log.f64 (sin.f64 ky))) 2))))))

simplify71.0ms (0.2%)

Algorithm
egg-herbie
Rules
814×fma-def_binary64
585×associate-*l*_binary64
580×associate-*r*_binary64
363×times-frac_binary64
333×associate-/l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01882715
15692509
219392341
Stop Event
node limit
Counts
183 → 167
Calls
Call 1
Inputs
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)))
(/.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)))
(*.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 (*.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 1 ky)
(+.f64 (*.f64 1/6 ky) (/.f64 1 ky))
(+.f64 (*.f64 1/6 ky) (+.f64 (*.f64 7/360 (pow.f64 ky 3)) (/.f64 1 ky)))
(+.f64 (*.f64 1/6 ky) (+.f64 (*.f64 31/15120 (pow.f64 ky 5)) (+.f64 (*.f64 7/360 (pow.f64 ky 3)) (/.f64 1 ky))))
Outputs
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)
(+.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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (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))
(+.f64 1 (fma.f64 1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 4)))))
(+.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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (/.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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2)))) (/.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 kx 6)))))))
(fma.f64 -1/2 (*.f64 (/.f64 (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (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 (+.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)) (pow.f64 kx 6))) 1))
(fma.f64 1/2 (fma.f64 (/.f64 (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3) (pow.f64 (sin.f64 ky) 2)) 2/45) (pow.f64 (sin.f64 ky) 2)) (pow.f64 kx 6) (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx))) (+.f64 1 (/.f64 (fma.f64 -1/2 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) -1/6) (/.f64 (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))
(/.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 (-.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 (/.f64 (sin.f64 kx) ky) (fma.f64 (-.f64 (/.f64 (+.f64 -1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/2)) (sin.f64 kx)) (fma.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)) (*.f64 (sin.f64 kx) 1/120))) (pow.f64 ky 3) (*.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 (-.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))))) (pow.f64 ky 3) (/.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 (-.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))))))) (pow.f64 ky 5)))))
(+.f64 (fma.f64 ky (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)) (/.f64 (sin.f64 kx) ky)) (fma.f64 (-.f64 (*.f64 1/2 (-.f64 (/.f64 2/45 (sin.f64 kx)) (/.f64 (+.f64 -1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/2)) (pow.f64 (sin.f64 kx) 3)))) (fma.f64 (sin.f64 kx) -1/5040 (fma.f64 -1/6 (-.f64 (/.f64 (+.f64 -1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/2)) (sin.f64 kx)) (fma.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)) (*.f64 (sin.f64 kx) 1/120))) (*.f64 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)) 1/120)))) (pow.f64 ky 5) (*.f64 (-.f64 (/.f64 (+.f64 -1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/2)) (sin.f64 kx)) (fma.f64 -1/6 (+.f64 (/.f64 1/2 (sin.f64 kx)) (*.f64 (sin.f64 kx) 1/6)) (*.f64 (sin.f64 kx) 1/120))) (pow.f64 ky 3))))
(+.f64 (/.f64 (sin.f64 kx) ky) (fma.f64 (-.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)))))) (pow.f64 ky 5) (fma.f64 (-.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))))) (pow.f64 ky 3) (*.f64 ky (fma.f64 (sin.f64 kx) 1/6 (/.f64 1/2 (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))
(*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (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 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 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 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 (+.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 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))))))
(fma.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 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 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 (+.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 (sin.f64 ky) (*.f64 (pow.f64 th 3) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (fma.f64 -1/5040 (*.f64 (sin.f64 ky) (*.f64 (pow.f64 th 7) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))) (*.f64 (sin.f64 ky) (*.f64 th (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))))))))
(+.f64 (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2))))) (+.f64 th (*.f64 (pow.f64 th 7) -1/5040))) (*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 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 (sin.f64 th) (/.f64 (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))
(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 (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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)))))) (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 kx (*.f64 kx (sin.f64 th))) (pow.f64 (sin.f64 ky) 2)) (sin.f64 th)) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (/.f64 (*.f64 (sin.f64 th) -1/4) (pow.f64 (sin.f64 ky) 4)))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (sin.f64 th)) (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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)))))) (+.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 (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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3))))) (pow.f64 (sin.f64 ky) 2)) (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 th)) (pow.f64 (sin.f64 ky) 2)) (*.f64 1/4 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3))))))))))
(-.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 6) (fma.f64 -1/2 (/.f64 (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (/.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 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3) (pow.f64 (sin.f64 ky) 2))))) (/.f64 (*.f64 (sin.f64 th) 1/4) (/.f64 (pow.f64 (sin.f64 ky) 4) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3))))))) (*.f64 (pow.f64 kx 4) (fma.f64 -1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (+.f64 (pow.f64 (/.f64 1/2 (sin.f64 ky)) 2) 1/3)) (/.f64 (*.f64 (sin.f64 th) -1/4) (pow.f64 (sin.f64 ky) 4)))))
(-.f64 (fma.f64 -1/2 (*.f64 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) (sin.f64 th)) (sin.f64 th)) (+.f64 (*.f64 (pow.f64 kx 6) (fma.f64 1/4 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 4)) (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3)) (fma.f64 1/2 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) 2)) (fma.f64 1/2 (/.f64 (+.f64 (/.f64 1/4 (pow.f64 (sin.f64 ky) 2)) 1/3) (pow.f64 (sin.f64 ky) 2)) 2/45)) (*.f64 (/.f64 -1/2 (pow.f64 (sin.f64 ky) 2)) (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 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 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)))
(/.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 (/.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 (*.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 (/.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 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 (*.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 (*.f64 (sin.f64 th) -1/2) (/.f64 (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) (-.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) 1/120)) (fma.f64 1/2 (/.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)) (*.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 (/.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 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 (*.f64 ky (sin.f64 th)) (sin.f64 kx)) (fma.f64 (-.f64 (/.f64 (*.f64 -1/5040 (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 (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 (*.f64 (sin.f64 th) -1/2) (/.f64 (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 (-.f64 (/.f64 (*.f64 -1/5040 (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 (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 (*.f64 (sin.f64 th) -1/2) (/.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 2/45 (/.f64 (+.f64 -1/6 (*.f64 (pow.f64 (/.f64 1/2 (sin.f64 kx)) 2) -1/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))))))) (pow.f64 ky 7)))
(fma.f64 (pow.f64 ky 5) (-.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) 1/120)) (fma.f64 1/2 (/.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)) (*.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 (/.f64 (sin.f64 th) (sin.f64 kx)) ky (*.f64 (-.f64 (fma.f64 -1/5040 (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 -1/2 (/.f64 (pow.f64 (sin.f64 kx) 2) (-.f64 (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) 1/120)) (fma.f64 1/2 (/.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)) (*.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 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 (sqrt.f64 (/.f64 1 (+.f64 (pow.f64 (sin.f64 ky) 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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.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)))) (*.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 (+.f64 (pow.f64 (sin.f64 ky) 2) (pow.f64 (sin.f64 kx) 2)))) (sin.f64 th)))
(/.f64 1 ky)
(+.f64 (*.f64 1/6 ky) (/.f64 1 ky))
(fma.f64 1/6 ky (/.f64 1 ky))
(fma.f64 ky 1/6 (/.f64 1 ky))
(+.f64 (*.f64 1/6 ky) (+.f64 (*.f64 7/360 (pow.f64 ky 3)) (/.f64 1 ky)))
(fma.f64 1/6 ky (fma.f64 7/360 (pow.f64 ky 3) (/.f64 1 ky)))
(fma.f64 ky 1/6 (fma.f64 (pow.f64 ky 3) 7/360 (/.f64 1 ky)))
(+.f64 (*.f64 1/6 ky) (+.f64 (*.f64 31/15120 (pow.f64 ky 5)) (+.f64 (*.f64 7/360 (pow.f64 ky 3)) (/.f64 1 ky))))
(fma.f64 1/6 ky (fma.f64 31/15120 (pow.f64 ky 5) (fma.f64 7/360 (pow.f64 ky 3) (/.f64 1 ky))))
(fma.f64 ky 1/6 (fma.f64 (pow.f64 ky 5) 31/15120 (fma.f64 (pow.f64 ky 3) 7/360 (/.f64 1 ky))))

localize6.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
5.2b
(*.f64 th (/.f64 ky kx))
Compiler

Compiled 14 to 5 computations (64.3% saved)

series5.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite46.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
681×pow1_binary64
628×add-log-exp_binary64
628×log1p-expm1-u_binary64
628×expm1-log1p-u_binary64
613×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify12.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/l*_binary64
associate-/r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08252
112252
216252
318252
Stop Event
saturated
Counts
58 → 24
Calls
Call 1
Inputs
(/.f64 (*.f64 th ky) kx)
(/.f64 (*.f64 th ky) kx)
(/.f64 (*.f64 th ky) kx)
(/.f64 (*.f64 th ky) kx)
(/.f64 (*.f64 th ky) kx)
(/.f64 (*.f64 th ky) kx)
(/.f64 (*.f64 th ky) kx)
(/.f64 (*.f64 th ky) kx)
(/.f64 (*.f64 th ky) kx)
(/.f64 (*.f64 th ky) kx)
(/.f64 (*.f64 th ky) kx)
(/.f64 (*.f64 th ky) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
(/.f64 (*.f64 ky th) kx)
Outputs
(/.f64 (*.f64 th ky) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 ky th) kx)
(/.f64 ky (/.f64 kx th))
(*.f64 (/.f64 th kx) ky)
(*.f64 ky (/.f64 th kx))

localize12.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(/.f64 1 (sin.f64 kx))
1.5b
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
Compiler

Compiled 24 to 11 computations (54.2% saved)

series25.0ms (0.1%)

Counts
1 → 36
Calls

9 calls:

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

rewrite66.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
856×pow1_binary64
786×add-log-exp_binary64
786×log1p-expm1-u_binary64
786×expm1-log1p-u_binary64
768×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify80.0ms (0.2%)

Algorithm
egg-herbie
Rules
516×distribute-rgt-neg-in_binary64
490×cancel-sign-sub-inv_binary64
468×distribute-lft-neg-in_binary64
377×distribute-neg-in_binary64
308×sub-neg_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
039432
1117401
2385391
31753378
45903376
Stop Event
node limit
Counts
62 → 36
Calls
Call 1
Inputs
(/.f64 (*.f64 th ky) kx)
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 ky th))) (/.f64 (*.f64 ky th) kx))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 ky th))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 th ky)) (*.f64 1/120 (*.f64 ky th))) (pow.f64 kx 3))) (/.f64 (*.f64 ky th) kx)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (*.f64 th ky)) (*.f64 1/120 (*.f64 ky th)))) (+.f64 (*.f64 -1/5040 (*.f64 ky th)) (*.f64 1/720 (*.f64 th ky)))) (pow.f64 kx 5))) (+.f64 (*.f64 1/6 (*.f64 kx (*.f64 ky th))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 th ky)) (*.f64 1/120 (*.f64 ky th))) (pow.f64 kx 3))) (/.f64 (*.f64 ky th) kx))))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
Outputs
(/.f64 (*.f64 th ky) kx)
(/.f64 th (/.f64 kx ky))
(*.f64 (/.f64 th kx) ky)
(*.f64 th (/.f64 ky kx))
(*.f64 ky (/.f64 th kx))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 ky th))) (/.f64 (*.f64 ky th) kx))
(fma.f64 1/6 (*.f64 kx (*.f64 th ky)) (/.f64 th (/.f64 kx ky)))
(fma.f64 1/6 (*.f64 th (*.f64 ky kx)) (*.f64 (/.f64 th kx) ky))
(*.f64 th (+.f64 (*.f64 1/6 (*.f64 ky kx)) (/.f64 ky kx)))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 ky (*.f64 kx 1/6))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 ky th))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 th ky)) (*.f64 1/120 (*.f64 ky th))) (pow.f64 kx 3))) (/.f64 (*.f64 ky th) kx)))
(fma.f64 1/6 (*.f64 kx (*.f64 th ky)) (fma.f64 -1 (*.f64 (fma.f64 -1/36 (*.f64 th ky) (*.f64 (*.f64 th ky) 1/120)) (pow.f64 kx 3)) (/.f64 th (/.f64 kx ky))))
(fma.f64 1/6 (*.f64 th (*.f64 ky kx)) (-.f64 (*.f64 (/.f64 th kx) ky) (*.f64 (*.f64 (*.f64 th ky) -7/360) (pow.f64 kx 3))))
(fma.f64 (pow.f64 kx 3) (*.f64 (*.f64 th ky) 7/360) (*.f64 th (+.f64 (*.f64 1/6 (*.f64 ky kx)) (/.f64 ky kx))))
(fma.f64 th (/.f64 ky kx) (*.f64 (*.f64 th ky) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360))))
(fma.f64 th (/.f64 ky kx) (*.f64 (*.f64 th ky) (+.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) 7/360))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 -1/36 (*.f64 th ky)) (*.f64 1/120 (*.f64 ky th)))) (+.f64 (*.f64 -1/5040 (*.f64 ky th)) (*.f64 1/720 (*.f64 th ky)))) (pow.f64 kx 5))) (+.f64 (*.f64 1/6 (*.f64 kx (*.f64 ky th))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1/36 (*.f64 th ky)) (*.f64 1/120 (*.f64 ky th))) (pow.f64 kx 3))) (/.f64 (*.f64 ky th) kx))))
(fma.f64 -1 (*.f64 (fma.f64 1/6 (fma.f64 -1/36 (*.f64 th ky) (*.f64 (*.f64 th ky) 1/120)) (fma.f64 -1/5040 (*.f64 th ky) (*.f64 (*.f64 th ky) 1/720))) (pow.f64 kx 5)) (fma.f64 1/6 (*.f64 kx (*.f64 th ky)) (fma.f64 -1 (*.f64 (fma.f64 -1/36 (*.f64 th ky) (*.f64 (*.f64 th ky) 1/120)) (pow.f64 kx 3)) (/.f64 th (/.f64 kx ky)))))
(-.f64 (fma.f64 1/6 (*.f64 th (*.f64 ky kx)) (-.f64 (*.f64 (/.f64 th kx) ky) (*.f64 (*.f64 (*.f64 th ky) -7/360) (pow.f64 kx 3)))) (*.f64 (fma.f64 1/6 (*.f64 (*.f64 th ky) -7/360) (*.f64 (*.f64 th ky) 1/840)) (pow.f64 kx 5)))
(-.f64 (fma.f64 (pow.f64 kx 3) (*.f64 (*.f64 th ky) 7/360) (*.f64 th (+.f64 (*.f64 1/6 (*.f64 ky kx)) (/.f64 ky kx)))) (*.f64 (fma.f64 th (*.f64 ky 1/720) (*.f64 (*.f64 th ky) -13/3780)) (pow.f64 kx 5)))
(-.f64 (fma.f64 th (/.f64 ky kx) (*.f64 (*.f64 th ky) (-.f64 (*.f64 kx 1/6) (*.f64 (pow.f64 kx 3) -7/360)))) (*.f64 (*.f64 (*.f64 th ky) -31/15120) (pow.f64 kx 5)))
(fma.f64 th (/.f64 ky kx) (fma.f64 kx (*.f64 (*.f64 th ky) (+.f64 1/6 (*.f64 (*.f64 kx kx) 7/360))) (*.f64 (pow.f64 kx 5) (*.f64 (*.f64 th ky) 31/15120))))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))

localize37.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1)
0.2b
(*.f64 (sin.f64 ky) th)
0.5b
(+.f64 1 (/.f64 1 (sin.f64 kx)))
1.5b
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 (sin.f64 ky) th))
Compiler

Compiled 46 to 26 computations (43.5% saved)

series9.0ms (0%)

Counts
3 → 52
Calls

15 calls:

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

rewrite126.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
572×log-prod_binary64
341×fma-def_binary64
309×pow2_binary64
291×prod-diff_binary64
216×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify108.0ms (0.3%)

Algorithm
egg-herbie
Rules
671×cancel-sign-sub-inv_binary64
426×fma-def_binary64
350×unsub-neg_binary64
319×fma-neg_binary64
285×distribute-rgt-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
079709
1236703
2708687
32750649
47569649
Stop Event
node limit
Counts
242 → 220
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx)))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th)))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 ky) th)) (*.f64 -1/5040 (*.f64 (sin.f64 ky) th)))) (pow.f64 kx 5))) (/.f64 (*.f64 (sin.f64 ky) th) kx))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 th (pow.f64 ky 7)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 1 kx)
(+.f64 1 (/.f64 1 kx))
(+.f64 1 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)))
(+.f64 1 (+.f64 (*.f64 1/6 kx) (+.f64 (*.f64 7/360 (pow.f64 kx 3)) (/.f64 1 kx))))
(/.f64 1 kx)
(+.f64 (*.f64 1/6 kx) (/.f64 1 kx))
(+.f64 (*.f64 1/6 kx) (+.f64 (*.f64 7/360 (pow.f64 kx 3)) (/.f64 1 kx)))
(+.f64 (*.f64 1/6 kx) (+.f64 (*.f64 31/15120 (pow.f64 kx 5)) (+.f64 (*.f64 7/360 (pow.f64 kx 3)) (/.f64 1 kx))))
(/.f64 1 (sin.f64 kx))
(/.f64 1 (sin.f64 kx))
(/.f64 1 (sin.f64 kx))
(/.f64 1 (sin.f64 kx))
(/.f64 1 (sin.f64 kx))
(/.f64 1 (sin.f64 kx))
(/.f64 1 (sin.f64 kx))
(/.f64 1 (sin.f64 kx))
Outputs
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(*.f64 (/.f64 (sin.f64 ky) kx) th)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx))
(fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (/.f64 (*.f64 (sin.f64 ky) th) kx))
(fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (*.f64 (/.f64 (sin.f64 ky) kx) th))
(*.f64 th (+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 (sin.f64 ky) (*.f64 kx 1/6))))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (/.f64 (*.f64 (sin.f64 ky) th) kx)))
(fma.f64 -1 (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) -7/360) (pow.f64 kx 3)) (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (/.f64 (*.f64 (sin.f64 ky) th) kx)))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (*.f64 (/.f64 (sin.f64 ky) kx) th)) (*.f64 (*.f64 (sin.f64 ky) th) (*.f64 -7/360 (pow.f64 kx 3))))
(fma.f64 (pow.f64 kx 3) (*.f64 (*.f64 (sin.f64 ky) th) 7/360) (*.f64 th (+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 (sin.f64 ky) (*.f64 kx 1/6)))))
(fma.f64 (/.f64 (sin.f64 ky) kx) th (*.f64 (*.f64 (sin.f64 ky) th) (fma.f64 (pow.f64 kx 3) 7/360 (*.f64 kx 1/6))))
(+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th))) (pow.f64 kx 3))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx))) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 1/6 (+.f64 (*.f64 1/120 (*.f64 (sin.f64 ky) th)) (*.f64 -1/36 (*.f64 (sin.f64 ky) th)))) (+.f64 (*.f64 1/720 (*.f64 (sin.f64 ky) th)) (*.f64 -1/5040 (*.f64 (sin.f64 ky) th)))) (pow.f64 kx 5))) (/.f64 (*.f64 (sin.f64 ky) th) kx))))
(fma.f64 -1 (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) -7/360) (pow.f64 kx 3)) (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (fma.f64 -1 (*.f64 (fma.f64 1/6 (*.f64 (*.f64 (sin.f64 ky) th) -7/360) (*.f64 (*.f64 (sin.f64 ky) th) 1/840)) (pow.f64 kx 5)) (/.f64 (*.f64 (sin.f64 ky) th) kx))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 ky) (*.f64 th kx)) (fma.f64 (neg.f64 (fma.f64 (*.f64 (sin.f64 ky) th) 1/840 (*.f64 (*.f64 (sin.f64 ky) th) -7/2160))) (pow.f64 kx 5) (*.f64 (/.f64 (sin.f64 ky) kx) th))) (*.f64 (*.f64 (sin.f64 ky) th) (*.f64 -7/360 (pow.f64 kx 3))))
(-.f64 (fma.f64 (pow.f64 kx 3) (*.f64 (*.f64 (sin.f64 ky) th) 7/360) (*.f64 th (+.f64 (/.f64 (sin.f64 ky) kx) (*.f64 (sin.f64 ky) (*.f64 kx 1/6))))) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) -31/15120) (pow.f64 kx 5)))
(+.f64 (fma.f64 (pow.f64 kx 5) (*.f64 (*.f64 (sin.f64 ky) th) 31/15120) (*.f64 (/.f64 th kx) (sin.f64 ky))) (*.f64 (*.f64 (sin.f64 ky) th) (fma.f64 (pow.f64 kx 3) 7/360 (*.f64 kx 1/6))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(/.f64 ky (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 ky (/.f64 th (sin.f64 kx)))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))
(fma.f64 -1/6 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 3))) (/.f64 ky (/.f64 (sin.f64 kx) th)))
(fma.f64 -1/6 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 3)) (*.f64 (/.f64 th (sin.f64 kx)) ky))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 th (sin.f64 kx))) (*.f64 ky (/.f64 th (sin.f64 kx))))
(*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx))))
(fma.f64 -1/6 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 3))) (fma.f64 1/120 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 5))) (/.f64 ky (/.f64 (sin.f64 kx) th))))
(fma.f64 -1/6 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 3)) (fma.f64 1/120 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 5)) (*.f64 (/.f64 th (sin.f64 kx)) ky)))
(fma.f64 1/120 (*.f64 (pow.f64 ky 5) (/.f64 th (sin.f64 kx))) (fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 th (sin.f64 kx))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
(fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 th (sin.f64 kx))) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 ky (*.f64 1/120 (pow.f64 ky 5)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 th (pow.f64 ky 3)) (sin.f64 kx))) (+.f64 (*.f64 1/120 (/.f64 (*.f64 th (pow.f64 ky 5)) (sin.f64 kx))) (+.f64 (*.f64 -1/5040 (/.f64 (*.f64 th (pow.f64 ky 7)) (sin.f64 kx))) (/.f64 (*.f64 th ky) (sin.f64 kx)))))
(fma.f64 -1/6 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 3))) (fma.f64 1/120 (/.f64 th (/.f64 (sin.f64 kx) (pow.f64 ky 5))) (fma.f64 -1/5040 (/.f64 (*.f64 th (pow.f64 ky 7)) (sin.f64 kx)) (/.f64 ky (/.f64 (sin.f64 kx) th)))))
(fma.f64 -1/6 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 3)) (fma.f64 1/120 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 5)) (fma.f64 -1/5040 (*.f64 (/.f64 th (sin.f64 kx)) (pow.f64 ky 7)) (*.f64 (/.f64 th (sin.f64 kx)) ky))))
(fma.f64 1/120 (*.f64 (pow.f64 ky 5) (/.f64 th (sin.f64 kx))) (fma.f64 -1/6 (*.f64 (pow.f64 ky 3) (/.f64 th (sin.f64 kx))) (fma.f64 -1/5040 (*.f64 (pow.f64 ky 7) (/.f64 th (sin.f64 kx))) (*.f64 ky (/.f64 th (sin.f64 kx))))))
(+.f64 (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 (*.f64 1/120 (pow.f64 ky 5)) (*.f64 -1/5040 (pow.f64 ky 7)))))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) th)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 1 kx)
(+.f64 1 (/.f64 1 kx))
(+.f64 1 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)))
(+.f64 1 (fma.f64 1/6 kx (/.f64 1 kx)))
(+.f64 1 (fma.f64 kx 1/6 (/.f64 1 kx)))
(+.f64 (/.f64 1 kx) (fma.f64 kx 1/6 1))
(+.f64 1 (+.f64 (*.f64 1/6 kx) (+.f64 (*.f64 7/360 (pow.f64 kx 3)) (/.f64 1 kx))))
(+.f64 1 (fma.f64 1/6 kx (fma.f64 7/360 (pow.f64 kx 3) (/.f64 1 kx))))
(+.f64 1 (fma.f64 kx 1/6 (fma.f64 (pow.f64 kx 3) 7/360 (/.f64 1 kx))))
(+.f64 (fma.f64 (pow.f64 kx 3) 7/360 (/.f64 1 kx)) (fma.f64 kx 1/6 1))
(/.f64 1 kx)
(+.f64 (*.f64 1/6 kx) (/.f64 1 kx))
(fma.f64 1/6 kx (/.f64 1 kx))
(fma.f64 kx 1/6 (/.f64 1 kx))
(+.f64 (*.f64 1/6 kx) (+.f64 (*.f64 7/360 (pow.f64 kx 3)) (/.f64 1 kx)))
(fma.f64 1/6 kx (fma.f64 7/360 (pow.f64 kx 3) (/.f64 1 kx)))
(fma.f64 kx 1/6 (fma.f64 (pow.f64 kx 3) 7/360 (/.f64 1 kx)))
(+.f64 (*.f64 1/6 kx) (+.f64 (*.f64 31/15120 (pow.f64 kx 5)) (+.f64 (*.f64 7/360 (pow.f64 kx 3)) (/.f64 1 kx))))
(fma.f64 1/6 kx (fma.f64 31/15120 (pow.f64 kx 5) (fma.f64 7/360 (pow.f64 kx 3) (/.f64 1 kx))))
(fma.f64 kx 1/6 (fma.f64 (pow.f64 kx 5) 31/15120 (fma.f64 (pow.f64 kx 3) 7/360 (/.f64 1 kx))))
(fma.f64 kx 1/6 (fma.f64 (pow.f64 kx 3) 7/360 (fma.f64 (pow.f64 kx 5) 31/15120 (/.f64 1 kx))))
(/.f64 1 (sin.f64 kx))
(/.f64 1 (sin.f64 kx))
(/.f64 1 (sin.f64 kx))
(/.f64 1 (sin.f64 kx))
(/.f64 1 (sin.f64 kx))
(/.f64 1 (sin.f64 kx))
(/.f64 1 (sin.f64 kx))
(/.f64 1 (sin.f64 kx))

localize28.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 50 to 17 computations (66% saved)

series16.0ms (0%)

Counts
4 → 32
Calls

27 calls:

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

rewrite88.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
712×log-prod_binary64
403×fma-def_binary64
354×pow2_binary64
249×pow1/3_binary64
241×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01241
126241
2371941
Stop Event
node limit
Counts
4 → 145
Calls
Call 1
Inputs
(*.f64 1/6 (*.f64 (sin.f64 th) kx))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) kx)
(/.f64 (sin.f64 th) kx)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/6 (*.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 kx) (*.f64 1/6 (sin.f64 th)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 kx) (*.f64 1/6 (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 kx) (*.f64 1/6 (sin.f64 th))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 kx) (*.f64 1/6 (sin.f64 th))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/36 (pow.f64 (*.f64 (sin.f64 th) kx) 2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/216 (pow.f64 (*.f64 (sin.f64 th) kx) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 1/36 (pow.f64 (*.f64 (sin.f64 th) kx) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 kx) (*.f64 1/6 (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 1/216 (pow.f64 (*.f64 (sin.f64 th) kx) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) 1) (*.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) 3) (pow.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) 3)) (+.f64 (pow.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) 2) (-.f64 (pow.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) 2) (*.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) 2) (pow.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) 2)) (-.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 1/216 (pow.f64 (*.f64 (sin.f64 th) kx) 3) (pow.f64 (/.f64 (sin.f64 th) kx) 3)) (sin.f64 ky)) (fma.f64 (/.f64 (sin.f64 th) kx) (-.f64 (/.f64 (sin.f64 th) kx) (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (*.f64 1/36 (pow.f64 (*.f64 (sin.f64 th) kx) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 1/36 (pow.f64 (*.f64 (sin.f64 th) kx) 2)) (pow.f64 (/.f64 (sin.f64 th) kx) 2)) (sin.f64 ky)) (-.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (fma.f64 1/216 (pow.f64 (*.f64 (sin.f64 th) kx) 3) (pow.f64 (/.f64 (sin.f64 th) kx) 3))) (fma.f64 (/.f64 (sin.f64 th) kx) (-.f64 (/.f64 (sin.f64 th) kx) (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (*.f64 1/36 (pow.f64 (*.f64 (sin.f64 th) kx) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 ky) (-.f64 (*.f64 1/36 (pow.f64 (*.f64 (sin.f64 th) kx) 2)) (pow.f64 (/.f64 (sin.f64 th) kx) 2))) (-.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)) 3) (pow.f64 (sin.f64 ky) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 ky)) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (exp.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 ky) 3) (pow.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)) 3) (pow.f64 (sin.f64 ky) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 th) kx)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/6 (*.f64 (*.f64 (sin.f64 th) kx) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 th) (*.f64 (/.f64 1 kx) (sin.f64 ky)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 th) kx) (*.f64 1/6 (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 ky) (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 ky)) 2) (*.f64 (cbrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) kx)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) kx)) 2) (*.f64 (cbrt.f64 (/.f64 (sin.f64 th) kx)) (sin.f64 ky)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) 2) (*.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) kx)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (sin.f64 th) kx)) (*.f64 (sqrt.f64 (/.f64 (sin.f64 th) kx)) (sin.f64 ky)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (*.f64 (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)) 1 (*.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/6 (sin.f64 th)) (*.f64 kx (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) 2) (cbrt.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky))) 2) (cbrt.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (sqrt.f64 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky))) (sqrt.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)))) (*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (sqrt.f64 (sin.f64 ky))) (*.f64 (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (sqrt.f64 (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 (sin.f64 th) kx))) (*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 (sin.f64 th) kx))) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (/.f64 (sin.f64 th) kx)) (sqrt.f64 (sin.f64 ky))) (*.f64 (sqrt.f64 (/.f64 (sin.f64 th) kx)) (sqrt.f64 (sin.f64 ky))) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (/.f64 1 kx) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) 1/6) (*.f64 (sin.f64 th) kx) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) (*.f64 (sin.f64 th) kx)) 1/6 (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) 2)) (cbrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)))) (sqrt.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) (*.f64 1/6 (sin.f64 th))) kx (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (cbrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) kx)) 2)) (cbrt.f64 (/.f64 (sin.f64 th) kx)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (/.f64 (sin.f64 th) kx))) (sqrt.f64 (/.f64 (sin.f64 th) kx)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (sin.f64 th) kx) (pow.f64 (cbrt.f64 (sin.f64 ky)) 2)) (cbrt.f64 (sin.f64 ky)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (/.f64 (sin.f64 th) kx) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)) (*.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (sin.f64 ky)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 th) kx))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 kx) (sin.f64 th))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 kx) (sin.f64 th)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 kx) (sin.f64 th)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 th) kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 th) kx) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 th) kx) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 th) kx) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 th) kx)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 th) kx)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 kx 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 kx 3) (pow.f64 (sin.f64 th) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 th) kx) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 kx) (sin.f64 th)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 th) kx))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 th) kx) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 th) 3) (pow.f64 kx 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 kx 3) (pow.f64 (sin.f64 th) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 th) kx)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sin.f64 th) kx))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 th) kx))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sin.f64 th) kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 th) kx)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sin.f64 th) kx)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sin.f64 th) kx))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 th) (/.f64 1 kx))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sin.f64 th) kx) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sin.f64 th) kx))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sin.f64 th) kx)) (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) kx)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) kx)) 2) (cbrt.f64 (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (*.f64 (cbrt.f64 (sin.f64 th)) (/.f64 1 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sin.f64 th) kx)) (sqrt.f64 (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 th)) (*.f64 (sqrt.f64 (sin.f64 th)) (/.f64 1 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sin.f64 th)) (/.f64 1 (neg.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 kx) (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)) kx))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) 1) (/.f64 (sqrt.f64 (sin.f64 th)) kx))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 kx) 2)) (/.f64 (sin.f64 th) (cbrt.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (pow.f64 (cbrt.f64 kx) 2)) (cbrt.f64 (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (sin.f64 th)) (pow.f64 (cbrt.f64 kx) 2)) (/.f64 (sqrt.f64 (sin.f64 th)) (cbrt.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 kx)) (/.f64 (sin.f64 th) (sqrt.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (sin.f64 th)) 2) (sqrt.f64 kx)) (/.f64 (cbrt.f64 (sin.f64 th)) (sqrt.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sin.f64 th) kx) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) kx) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) kx)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sin.f64 th) kx)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sin.f64 th) kx) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 kx (sin.f64 th)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 kx (sin.f64 th)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sin.f64 th) (neg.f64 kx)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sin.f64 th) kx) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sin.f64 th) kx))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sin.f64 th) kx) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sin.f64 th) kx)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) kx)) 1))))))

simplify74.0ms (0.2%)

Algorithm
egg-herbie
Rules
694×fma-def_binary64
583×distribute-rgt-in_binary64
467×associate-*l*_binary64
439×associate-*r*_binary64
405×distribute-lft-out_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0103928
1322834
21052717
34542709
46800691
Stop Event
node limit
Counts
177 → 190
Calls
Call 1
Inputs
(*.f64 1/6 (*.f64 th kx))
(+.f64 (*.f64 1/6 (*.f64 th kx)) (*.f64 -1/36 (*.f64 (pow.f64 th 3) kx)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 1/6 (*.f64 th kx)) (*.f64 -1/36 (*.f64 (pow.f64 th 3) kx))))
(+.f64 (*.f64 -1/30240 (*.f64 (pow.f64 th 7) kx)) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 1/6 (*.f64 th kx)) (*.f64 -1/36 (*.f64 (pow.f64 th 3) kx)))))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 ky 7) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky))))
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
(+.f64 (*.f64 (-.f64 (*.f64 -1/36 kx) (*.f64 1/6 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th)))
(+.f64 (*.f64 (+.f64 (*.f64 1/720 kx) (*.f64 1/120 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (+.f64 (*.f64 (-.f64 (*.f64 -1/36 kx) (*.f64 1/6 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))))
(+.f64 (*.f64 (+.f64 (*.f64 1/720 kx) (*.f64 1/120 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (+.f64 (*.f64 (-.f64 (*.f64 -1/36 kx) (*.f64 1/6 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (-.f64 (*.f64 -1/30240 kx) (*.f64 1/5040 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(*.f64 kx th)
(+.f64 (*.f64 kx th) (*.f64 -1/6 (*.f64 (pow.f64 th 3) kx)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 kx th) (*.f64 -1/6 (*.f64 (pow.f64 th 3) kx))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 kx th) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) kx)) (*.f64 -1/5040 (*.f64 (pow.f64 th 7) kx)))))
(/.f64 th kx)
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (/.f64 th kx))
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (+.f64 (/.f64 th kx) (*.f64 1/120 (/.f64 (pow.f64 th 5) kx))))
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 th 7) kx)) (+.f64 (/.f64 th kx) (*.f64 1/120 (/.f64 (pow.f64 th 5) kx)))))
Outputs
(*.f64 1/6 (*.f64 th kx))
(*.f64 (*.f64 1/6 th) kx)
(*.f64 th (*.f64 1/6 kx))
(+.f64 (*.f64 1/6 (*.f64 th kx)) (*.f64 -1/36 (*.f64 (pow.f64 th 3) kx)))
(fma.f64 1/6 (*.f64 th kx) (*.f64 -1/36 (*.f64 kx (pow.f64 th 3))))
(*.f64 kx (+.f64 (*.f64 1/6 th) (*.f64 -1/36 (pow.f64 th 3))))
(*.f64 kx (fma.f64 -1/36 (pow.f64 th 3) (*.f64 1/6 th)))
(+.f64 (*.f64 1/720 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 1/6 (*.f64 th kx)) (*.f64 -1/36 (*.f64 (pow.f64 th 3) kx))))
(fma.f64 1/720 (*.f64 kx (pow.f64 th 5)) (fma.f64 1/6 (*.f64 th kx) (*.f64 -1/36 (*.f64 kx (pow.f64 th 3)))))
(fma.f64 1/720 (*.f64 kx (pow.f64 th 5)) (*.f64 kx (+.f64 (*.f64 1/6 th) (*.f64 -1/36 (pow.f64 th 3)))))
(*.f64 kx (+.f64 (*.f64 -1/36 (pow.f64 th 3)) (fma.f64 1/720 (pow.f64 th 5) (*.f64 1/6 th))))
(+.f64 (*.f64 -1/30240 (*.f64 (pow.f64 th 7) kx)) (+.f64 (*.f64 1/720 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 1/6 (*.f64 th kx)) (*.f64 -1/36 (*.f64 (pow.f64 th 3) kx)))))
(fma.f64 -1/30240 (*.f64 kx (pow.f64 th 7)) (fma.f64 1/720 (*.f64 kx (pow.f64 th 5)) (fma.f64 1/6 (*.f64 th kx) (*.f64 -1/36 (*.f64 kx (pow.f64 th 3))))))
(fma.f64 -1/30240 (*.f64 kx (pow.f64 th 7)) (fma.f64 1/720 (*.f64 kx (pow.f64 th 5)) (*.f64 kx (+.f64 (*.f64 1/6 th) (*.f64 -1/36 (pow.f64 th 3))))))
(*.f64 kx (+.f64 (fma.f64 -1/36 (pow.f64 th 3) (*.f64 1/6 th)) (fma.f64 -1/30240 (pow.f64 th 7) (*.f64 1/720 (pow.f64 th 5)))))
(*.f64 kx (+.f64 (fma.f64 -1/30240 (pow.f64 th 7) (*.f64 1/720 (pow.f64 th 5))) (fma.f64 -1/36 (pow.f64 th 3) (*.f64 1/6 th))))
(*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)
(*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) ky)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky))
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (pow.f64 ky 3)) (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) ky))
(*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (fma.f64 -1/6 (pow.f64 ky 3) ky))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky)))
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (pow.f64 ky 3)) (fma.f64 1/120 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (pow.f64 ky 5)) (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) ky)))
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (pow.f64 ky 3)) (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (+.f64 ky (*.f64 1/120 (pow.f64 ky 5)))))
(*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (+.f64 ky (fma.f64 -1/6 (pow.f64 ky 3) (*.f64 1/120 (pow.f64 ky 5)))))
(*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (+.f64 (*.f64 1/120 (pow.f64 ky 5)) (fma.f64 -1/6 (pow.f64 ky 3) ky)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 ky 7) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 ky 5) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))) (*.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)) ky))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (pow.f64 ky 3)) (fma.f64 -1/5040 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (pow.f64 ky 7)) (fma.f64 1/120 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (pow.f64 ky 5)) (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) ky))))
(+.f64 (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (+.f64 ky (*.f64 1/120 (pow.f64 ky 5)))) (*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) (*.f64 -1/5040 (pow.f64 ky 7)))))
(*.f64 (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)) (+.f64 (fma.f64 1/120 (pow.f64 ky 5) ky) (fma.f64 -1/6 (pow.f64 ky 3) (*.f64 -1/5040 (pow.f64 ky 7)))))
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))
(*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (*.f64 th (sin.f64 ky)))
(*.f64 th (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(+.f64 (*.f64 (-.f64 (*.f64 -1/36 kx) (*.f64 1/6 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th)))
(fma.f64 (-.f64 (*.f64 kx -1/36) (/.f64 1/6 kx)) (*.f64 (pow.f64 th 3) (sin.f64 ky)) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (*.f64 th (sin.f64 ky))))
(fma.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (*.f64 th (sin.f64 ky)) (*.f64 (pow.f64 th 3) (*.f64 (sin.f64 ky) (fma.f64 kx -1/36 (/.f64 -1/6 kx)))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (fma.f64 1/6 kx (/.f64 1 kx))) (*.f64 (pow.f64 th 3) (fma.f64 kx -1/36 (/.f64 -1/6 kx)))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 (pow.f64 th 3) (fma.f64 kx -1/36 (/.f64 -1/6 kx))) (*.f64 th (fma.f64 1/6 kx (/.f64 1 kx)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/720 kx) (*.f64 1/120 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (+.f64 (*.f64 (-.f64 (*.f64 -1/36 kx) (*.f64 1/6 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th))))
(fma.f64 (fma.f64 1/720 kx (/.f64 1/120 kx)) (*.f64 (pow.f64 th 5) (sin.f64 ky)) (fma.f64 (-.f64 (*.f64 kx -1/36) (/.f64 1/6 kx)) (*.f64 (pow.f64 th 3) (sin.f64 ky)) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (*.f64 th (sin.f64 ky)))))
(fma.f64 (fma.f64 kx 1/720 (/.f64 1/120 kx)) (*.f64 (pow.f64 th 5) (sin.f64 ky)) (fma.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (*.f64 th (sin.f64 ky)) (*.f64 (pow.f64 th 3) (*.f64 (sin.f64 ky) (fma.f64 kx -1/36 (/.f64 -1/6 kx))))))
(fma.f64 (pow.f64 th 3) (*.f64 (sin.f64 ky) (fma.f64 kx -1/36 (/.f64 -1/6 kx))) (*.f64 (sin.f64 ky) (+.f64 (*.f64 th (fma.f64 1/6 kx (/.f64 1 kx))) (*.f64 (pow.f64 th 5) (fma.f64 kx 1/720 (/.f64 1/120 kx))))))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (fma.f64 1/6 kx (/.f64 1 kx))) (+.f64 (*.f64 (pow.f64 th 3) (fma.f64 kx -1/36 (/.f64 -1/6 kx))) (*.f64 (pow.f64 th 5) (fma.f64 kx 1/720 (/.f64 1/120 kx))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/720 kx) (*.f64 1/120 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 5))) (+.f64 (*.f64 (-.f64 (*.f64 -1/36 kx) (*.f64 1/6 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 3))) (+.f64 (*.f64 (-.f64 (*.f64 -1/30240 kx) (*.f64 1/5040 (/.f64 1 kx))) (*.f64 (sin.f64 ky) (pow.f64 th 7))) (*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 (sin.f64 ky) th)))))
(fma.f64 (fma.f64 1/720 kx (/.f64 1/120 kx)) (*.f64 (pow.f64 th 5) (sin.f64 ky)) (fma.f64 (-.f64 (*.f64 kx -1/36) (/.f64 1/6 kx)) (*.f64 (pow.f64 th 3) (sin.f64 ky)) (fma.f64 (-.f64 (*.f64 kx -1/30240) (/.f64 1/5040 kx)) (*.f64 (pow.f64 th 7) (sin.f64 ky)) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (*.f64 th (sin.f64 ky))))))
(fma.f64 (fma.f64 kx 1/720 (/.f64 1/120 kx)) (*.f64 (pow.f64 th 5) (sin.f64 ky)) (fma.f64 (fma.f64 kx -1/36 (/.f64 -1/6 kx)) (*.f64 (pow.f64 th 3) (sin.f64 ky)) (fma.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (*.f64 th (sin.f64 ky)) (*.f64 (pow.f64 th 7) (*.f64 (sin.f64 ky) (fma.f64 kx -1/30240 (/.f64 -1/5040 kx)))))))
(+.f64 (*.f64 (sin.f64 ky) (+.f64 (*.f64 th (fma.f64 1/6 kx (/.f64 1 kx))) (*.f64 (pow.f64 th 7) (fma.f64 kx -1/30240 (/.f64 -1/5040 kx))))) (*.f64 (sin.f64 ky) (+.f64 (*.f64 (pow.f64 th 3) (fma.f64 kx -1/36 (/.f64 -1/6 kx))) (*.f64 (pow.f64 th 5) (fma.f64 kx 1/720 (/.f64 1/120 kx))))))
(*.f64 (sin.f64 ky) (+.f64 (+.f64 (*.f64 (pow.f64 th 7) (fma.f64 kx -1/30240 (/.f64 -1/5040 kx))) (*.f64 th (fma.f64 1/6 kx (/.f64 1 kx)))) (+.f64 (*.f64 (pow.f64 th 3) (fma.f64 kx -1/36 (/.f64 -1/6 kx))) (*.f64 (pow.f64 th 5) (fma.f64 kx 1/720 (/.f64 1/120 kx))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky)))
(/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))))
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))))
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(+.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx))))
(+.f64 (/.f64 (sin.f64 th) (/.f64 kx (sin.f64 ky))) (*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky)))))
(fma.f64 1/6 (*.f64 (sin.f64 th) (*.f64 kx (sin.f64 ky))) (/.f64 (sin.f64 ky) (/.f64 kx (sin.f64 th))))
(*.f64 (sin.f64 ky) (fma.f64 1/6 (*.f64 kx (sin.f64 th)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 th) (*.f64 (fma.f64 1/6 kx (/.f64 1 kx)) (sin.f64 ky)))
(*.f64 kx th)
(*.f64 th kx)
(+.f64 (*.f64 kx th) (*.f64 -1/6 (*.f64 (pow.f64 th 3) kx)))
(fma.f64 kx th (*.f64 (*.f64 kx (pow.f64 th 3)) -1/6))
(*.f64 kx (+.f64 th (*.f64 (pow.f64 th 3) -1/6)))
(*.f64 kx (fma.f64 (pow.f64 th 3) -1/6 th))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 kx th) (*.f64 -1/6 (*.f64 (pow.f64 th 3) kx))))
(fma.f64 1/120 (*.f64 kx (pow.f64 th 5)) (fma.f64 kx th (*.f64 (*.f64 kx (pow.f64 th 3)) -1/6)))
(fma.f64 (*.f64 kx (pow.f64 th 5)) 1/120 (*.f64 kx (+.f64 th (*.f64 (pow.f64 th 3) -1/6))))
(*.f64 kx (+.f64 (fma.f64 (pow.f64 th 3) -1/6 th) (*.f64 (pow.f64 th 5) 1/120)))
(*.f64 kx (+.f64 (*.f64 (pow.f64 th 5) 1/120) (fma.f64 (pow.f64 th 3) -1/6 th)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 th 5) kx)) (+.f64 (*.f64 kx th) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 th 3) kx)) (*.f64 -1/5040 (*.f64 (pow.f64 th 7) kx)))))
(fma.f64 1/120 (*.f64 kx (pow.f64 th 5)) (fma.f64 kx th (fma.f64 -1/6 (*.f64 kx (pow.f64 th 3)) (*.f64 (*.f64 kx (pow.f64 th 7)) -1/5040))))
(fma.f64 (*.f64 kx (pow.f64 th 5)) 1/120 (fma.f64 th kx (*.f64 kx (+.f64 (*.f64 (pow.f64 th 3) -1/6) (*.f64 (pow.f64 th 7) -1/5040)))))
(*.f64 kx (+.f64 (fma.f64 (pow.f64 th 3) -1/6 (*.f64 (pow.f64 th 7) -1/5040)) (fma.f64 (pow.f64 th 5) 1/120 th)))
(*.f64 kx (+.f64 (fma.f64 (pow.f64 th 5) 1/120 th) (fma.f64 (pow.f64 th 3) -1/6 (*.f64 (pow.f64 th 7) -1/5040))))
(/.f64 th kx)
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (/.f64 th kx))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) kx) (/.f64 th kx))
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (+.f64 (/.f64 th kx) (*.f64 1/120 (/.f64 (pow.f64 th 5) kx))))
(+.f64 (fma.f64 -1/6 (/.f64 (pow.f64 th 3) kx) (/.f64 th kx)) (*.f64 1/120 (/.f64 (pow.f64 th 5) kx)))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) kx) (fma.f64 1/120 (/.f64 (pow.f64 th 5) kx) (/.f64 th kx)))
(+.f64 (*.f64 -1/6 (/.f64 (pow.f64 th 3) kx)) (+.f64 (*.f64 -1/5040 (/.f64 (pow.f64 th 7) kx)) (+.f64 (/.f64 th kx) (*.f64 1/120 (/.f64 (pow.f64 th 5) kx)))))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) kx) (fma.f64 -1/5040 (/.f64 (pow.f64 th 7) kx) (+.f64 (/.f64 th kx) (*.f64 1/120 (/.f64 (pow.f64 th 5) kx)))))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) kx) (fma.f64 -1/5040 (/.f64 (pow.f64 th 7) kx) (fma.f64 1/120 (/.f64 (pow.f64 th 5) kx) (/.f64 th kx))))
(fma.f64 -1/6 (/.f64 (pow.f64 th 3) kx) (fma.f64 1/120 (/.f64 (pow.f64 th 5) kx) (fma.f64 -1/5040 (/.f64 (pow.f64 th 7) kx) (/.f64 th kx))))

eval290.0ms (0.8%)

Compiler

Compiled 14611 to 6823 computations (53.3% saved)

prune259.0ms (0.7%)

Pruning

89 alts after pruning (78 fresh and 11 done)

PrunedKeptTotal
New70130731
Fresh114859
Picked101
Done11112
Total71489803
Error
0b
Counts
803 → 89
Alt Table
Click to see full alt table
StatusErrorProgram
56.5b
(*.f64 (/.f64 1 kx) (*.f64 th ky))
55.9b
(/.f64 (*.f64 (sin.f64 ky) th) kx)
50.8b
(*.f64 (sin.f64 ky) (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
0.3b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
35.7b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
52.5b
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
57.2b
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
56.7b
th
44.5b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
47.7b
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 ky (sin.f64 kx)))
57.2b
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
56.3b
(*.f64 th (/.f64 ky kx))
49.1b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
52.3b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) th))
0.3b
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 (sin.f64 ky))))
57.5b
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
45.3b
(/.f64 (sin.f64 th) (fma.f64 1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
55.0b
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
49.1b
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
53.7b
(*.f64 (-.f64 (sqrt.f64 (pow.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 2)) 1) (*.f64 (sin.f64 ky) th))
48.7b
(sin.f64 th)
54.0b
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
32.7b
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
59.4b
(*.f64 (/.f64 th ky) (sin.f64 ky))
56.5b
(/.f64 (/.f64 (*.f64 th ky) (pow.f64 (cbrt.f64 kx) 2)) (cbrt.f64 kx))
55.0b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (fma.f64 (pow.f64 kx 4) -1/3 (*.f64 kx kx))))) (*.f64 (sin.f64 ky) th))
34.2b
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
53.9b
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
57.7b
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 ky ky))) (*.f64 (sin.f64 ky) th))
55.0b
(/.f64 (*.f64 (sin.f64 ky) th) ky)
9.4b
(*.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))
1.5b
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))
39.9b
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky)))) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
34.5b
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
58.2b
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (*.f64 1/6 kx)) (/.f64 (sin.f64 th) kx)))
58.2b
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 th kx)) (/.f64 (sin.f64 th) kx)))
55.4b
(*.f64 th (sqrt.f64 (pow.f64 (/.f64 ky (sin.f64 kx)) 2)))
49.1b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
49.1b
(/.f64 (sin.f64 th) (*.f64 (sin.f64 kx) (/.f64 1 (sin.f64 ky))))
56.5b
(/.f64 1 (/.f64 kx (*.f64 th ky)))
54.9b
(*.f64 th (/.f64 ky (sin.f64 kx)))
55.0b
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
30.9b
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (*.f64 1/6 ky) (/.f64 1 ky))))
56.3b
(/.f64 th (/.f64 kx ky))
0.2b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
54.0b
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 (sin.f64 ky) th))
54.0b
(+.f64 (*.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) (*.f64 (sin.f64 ky) th)) (*.f64 -1 (*.f64 (sin.f64 ky) th)))
55.0b
(/.f64 (*.f64 th ky) (sin.f64 kx))
59.3b
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
56.7b
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
56.5b
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
55.4b
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky)))
47.7b
(*.f64 (/.f64 1 (hypot.f64 ky (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
31.5b
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 ky)))
57.0b
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
51.3b
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
15.5b
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
57.2b
(sqrt.f64 (pow.f64 (*.f64 th (/.f64 ky kx)) 2))
48.7b
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 ky)))
56.4b
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
55.5b
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
58.8b
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
55.0b
(*.f64 th (pow.f64 (cbrt.f64 (/.f64 ky (sin.f64 kx))) 3))
35.7b
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
58.9b
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
50.9b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
57.5b
(pow.f64 (sqrt.f64 (*.f64 th (/.f64 ky kx))) 2)
54.9b
(*.f64 (/.f64 th (sin.f64 kx)) ky)
56.3b
(*.f64 ky (/.f64 th kx))
54.6b
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
0.2b
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
54.6b
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
56.3b
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky kx))) 3)
56.5b
(/.f64 (*.f64 th ky) kx)
53.9b
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
58.9b
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
55.3b
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
55.0b
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
0.3b
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
49.1b
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
50.9b
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
54.0b
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
55.9b
(*.f64 (/.f64 th kx) (sin.f64 ky))
57.1b
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
1.6b
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
54.4b
(exp.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
58.1b
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 th (pow.f64 (sin.f64 ky) 2))) th)
56.8b
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
55.8b
(*.f64 th (/.f64 (sin.f64 ky) kx))
Compiler

Compiled 1153 to 817 computations (29.1% saved)

regimes987.0ms (2.6%)

Counts
125 → 1
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(sqrt.f64 (pow.f64 (*.f64 th (/.f64 ky kx)) 2))
(pow.f64 (sqrt.f64 (*.f64 th (/.f64 ky kx))) 2)
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky kx))) 3)
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 ky ky))) (*.f64 (sin.f64 ky) th))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (*.f64 1/6 kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 th kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) th))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky)))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (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 (*.f64 (sin.f64 ky) th) (hypot.f64 ky (sin.f64 kx)))
(*.f64 th (sqrt.f64 (pow.f64 (/.f64 ky (sin.f64 kx)) 2)))
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))) 3)
(*.f64 th (pow.f64 (cbrt.f64 (/.f64 ky (sin.f64 kx))) 3))
(/.f64 (sin.f64 th) (*.f64 (sin.f64 kx) (/.f64 1 (sin.f64 ky))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(/.f64 (/.f64 (*.f64 th ky) (pow.f64 (cbrt.f64 kx) 2)) (cbrt.f64 kx))
(*.f64 (/.f64 1 (hypot.f64 ky (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/6 (pow.f64 ky 3)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 th (pow.f64 (sin.f64 ky) 2))) th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(+.f64 (*.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) (*.f64 (sin.f64 ky) th)) (*.f64 -1 (*.f64 (sin.f64 ky) th)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(pow.f64 (pow.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))) 3) 1/3)
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 ky)))
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 2))) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 th) (fma.f64 1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (-.f64 (sqrt.f64 (pow.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 2)) 1) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (*.f64 1/6 ky) (/.f64 1 ky))))
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (fma.f64 (pow.f64 kx 4) -1/3 (*.f64 kx kx))))) (*.f64 (sin.f64 ky) 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 (sin.f64 ky) (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(exp.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (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 kx) (sin.f64 ky)) (/.f64 1 (sin.f64 ky))))
(*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(/.f64 1 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sin.f64 th) (/.f64 1 (sin.f64 ky))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (sin.f64 ky)) kx) (sin.f64 ky))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (-.f64 1/2 (*.f64 1/2 (cos.f64 (+.f64 ky ky)))) (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 ky) th))
(*.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) (sin.f64 th)) (log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (log.f64 (exp.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (expm1.f64 (log1p.f64 (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))
(pow.f64 (cbrt.f64 (/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))) 3)
(*.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 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
Calls

11 calls:

167.0ms
ky
118.0ms
(sin.f64 kx)
113.0ms
kx
102.0ms
(sin.f64 th)
99.0ms
th
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 1366 to 537 computations (60.7% saved)

regimes2.9s (7.5%)

Counts
106 → 3
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(sqrt.f64 (pow.f64 (*.f64 th (/.f64 ky kx)) 2))
(pow.f64 (sqrt.f64 (*.f64 th (/.f64 ky kx))) 2)
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky kx))) 3)
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 ky ky))) (*.f64 (sin.f64 ky) th))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (*.f64 1/6 kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 th kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) th))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky)))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (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 (*.f64 (sin.f64 ky) th) (hypot.f64 ky (sin.f64 kx)))
(*.f64 th (sqrt.f64 (pow.f64 (/.f64 ky (sin.f64 kx)) 2)))
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))) 3)
(*.f64 th (pow.f64 (cbrt.f64 (/.f64 ky (sin.f64 kx))) 3))
(/.f64 (sin.f64 th) (*.f64 (sin.f64 kx) (/.f64 1 (sin.f64 ky))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(/.f64 (/.f64 (*.f64 th ky) (pow.f64 (cbrt.f64 kx) 2)) (cbrt.f64 kx))
(*.f64 (/.f64 1 (hypot.f64 ky (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/6 (pow.f64 ky 3)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 th (pow.f64 (sin.f64 ky) 2))) th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(+.f64 (*.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) (*.f64 (sin.f64 ky) th)) (*.f64 -1 (*.f64 (sin.f64 ky) th)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(pow.f64 (pow.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))) 3) 1/3)
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 ky)))
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 2))) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 th) (fma.f64 1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (-.f64 (sqrt.f64 (pow.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 2)) 1) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (*.f64 1/6 ky) (/.f64 1 ky))))
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) 2)))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (fma.f64 (pow.f64 kx 4) -1/3 (*.f64 kx kx))))) (*.f64 (sin.f64 ky) 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 (sin.f64 ky) (expm1.f64 (log1p.f64 (/.f64 (sin.f64 th) (sin.f64 kx)))))
(exp.f64 (log.f64 (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))))
Outputs
(/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th))))
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (*.f64 1/6 ky) (/.f64 1 ky))))
(sin.f64 th)
Calls

10 calls:

449.0ms
(sin.f64 th)
405.0ms
(sin.f64 th)
371.0ms
kx
274.0ms
(sin.f64 kx)
266.0ms
ky
Results
ErrorSegmentsBranch
27.9b5kx
18.5b3ky
18.5b3th
14.4b3(sin.f64 ky)
14.4b3(sin.f64 ky)
29.1b3(pow.f64 (sin.f64 kx) 2)
29.1b3(pow.f64 (sin.f64 kx) 2)
27.4b3(sin.f64 kx)
17.4b5(sin.f64 th)
17.4b5(sin.f64 th)
Compiler

Compiled 1058 to 415 computations (60.8% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.0146572353006865e-10
0.02352448911389513
0.0ms
-0.08571488385613242
-0.07673460668804451
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes2.4s (6.1%)

Counts
100 → 3
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(sqrt.f64 (pow.f64 (*.f64 th (/.f64 ky kx)) 2))
(pow.f64 (sqrt.f64 (*.f64 th (/.f64 ky kx))) 2)
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky kx))) 3)
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 ky ky))) (*.f64 (sin.f64 ky) th))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (*.f64 1/6 kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 th kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) th))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky)))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (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 (*.f64 (sin.f64 ky) th) (hypot.f64 ky (sin.f64 kx)))
(*.f64 th (sqrt.f64 (pow.f64 (/.f64 ky (sin.f64 kx)) 2)))
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))) 3)
(*.f64 th (pow.f64 (cbrt.f64 (/.f64 ky (sin.f64 kx))) 3))
(/.f64 (sin.f64 th) (*.f64 (sin.f64 kx) (/.f64 1 (sin.f64 ky))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(/.f64 (/.f64 (*.f64 th ky) (pow.f64 (cbrt.f64 kx) 2)) (cbrt.f64 kx))
(*.f64 (/.f64 1 (hypot.f64 ky (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/6 (pow.f64 ky 3)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 th (pow.f64 (sin.f64 ky) 2))) th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(+.f64 (*.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) (*.f64 (sin.f64 ky) th)) (*.f64 -1 (*.f64 (sin.f64 ky) th)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(pow.f64 (pow.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))) 3) 1/3)
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 ky)))
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 2))) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 th) (fma.f64 1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (-.f64 (sqrt.f64 (pow.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 2)) 1) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (*.f64 1/6 ky) (/.f64 1 ky))))
Outputs
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (*.f64 1/6 ky) (/.f64 1 ky))))
(sin.f64 th)
Calls

8 calls:

562.0ms
kx
392.0ms
(sin.f64 th)
355.0ms
(sin.f64 th)
276.0ms
(sin.f64 kx)
267.0ms
ky
Results
ErrorSegmentsBranch
27.9b5kx
18.5b3ky
18.5b3th
14.4b3(sin.f64 ky)
14.4b3(sin.f64 ky)
27.4b3(sin.f64 kx)
17.4b5(sin.f64 th)
17.4b5(sin.f64 th)
Compiler

Compiled 951 to 365 computations (61.6% saved)

bsearch2.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.0146572353006865e-10
0.02352448911389513
0.0ms
-0.08571488385613242
-0.07673460668804451
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes2.0s (5.3%)

Counts
99 → 3
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(sqrt.f64 (pow.f64 (*.f64 th (/.f64 ky kx)) 2))
(pow.f64 (sqrt.f64 (*.f64 th (/.f64 ky kx))) 2)
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky kx))) 3)
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 ky ky))) (*.f64 (sin.f64 ky) th))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (*.f64 1/6 kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 th kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) th))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky)))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (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 (*.f64 (sin.f64 ky) th) (hypot.f64 ky (sin.f64 kx)))
(*.f64 th (sqrt.f64 (pow.f64 (/.f64 ky (sin.f64 kx)) 2)))
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))) 3)
(*.f64 th (pow.f64 (cbrt.f64 (/.f64 ky (sin.f64 kx))) 3))
(/.f64 (sin.f64 th) (*.f64 (sin.f64 kx) (/.f64 1 (sin.f64 ky))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(/.f64 (/.f64 (*.f64 th ky) (pow.f64 (cbrt.f64 kx) 2)) (cbrt.f64 kx))
(*.f64 (/.f64 1 (hypot.f64 ky (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/6 (pow.f64 ky 3)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 th (pow.f64 (sin.f64 ky) 2))) th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(+.f64 (*.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) (*.f64 (sin.f64 ky) th)) (*.f64 -1 (*.f64 (sin.f64 ky) th)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(pow.f64 (pow.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))) 3) 1/3)
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 ky)))
(*.f64 (/.f64 1 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (sin.f64 ky) 2))) (*.f64 (sin.f64 ky) th))
(/.f64 (sin.f64 th) (fma.f64 1/2 (/.f64 kx (/.f64 (pow.f64 (sin.f64 ky) 2) kx)) 1))
(/.f64 (sin.f64 th) (fma.f64 1/2 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) 2)) kx) 1))
(*.f64 (-.f64 (sqrt.f64 (pow.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 2)) 1) (*.f64 (sin.f64 ky) th))
Outputs
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 ky)))
(sin.f64 th)
Calls

8 calls:

356.0ms
(sin.f64 th)
329.0ms
(sin.f64 th)
301.0ms
(sin.f64 kx)
290.0ms
kx
190.0ms
(sin.f64 ky)
Results
ErrorSegmentsBranch
28.3b5kx
18.6b3ky
18.6b3th
14.4b3(sin.f64 ky)
14.4b3(sin.f64 ky)
27.7b3(sin.f64 kx)
17.5b5(sin.f64 th)
17.5b5(sin.f64 th)
Compiler

Compiled 935 to 358 computations (61.7% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.0146572353006865e-10
0.02352448911389513
0.0ms
-0.00018762747171814642
-6.735562372731843e-21
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes1.6s (4%)

Counts
93 → 3
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(sqrt.f64 (pow.f64 (*.f64 th (/.f64 ky kx)) 2))
(pow.f64 (sqrt.f64 (*.f64 th (/.f64 ky kx))) 2)
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky kx))) 3)
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 ky ky))) (*.f64 (sin.f64 ky) th))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (*.f64 1/6 kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 th kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) th))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky)))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (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 (*.f64 (sin.f64 ky) th) (hypot.f64 ky (sin.f64 kx)))
(*.f64 th (sqrt.f64 (pow.f64 (/.f64 ky (sin.f64 kx)) 2)))
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))) 3)
(*.f64 th (pow.f64 (cbrt.f64 (/.f64 ky (sin.f64 kx))) 3))
(/.f64 (sin.f64 th) (*.f64 (sin.f64 kx) (/.f64 1 (sin.f64 ky))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(/.f64 (/.f64 (*.f64 th ky) (pow.f64 (cbrt.f64 kx) 2)) (cbrt.f64 kx))
(*.f64 (/.f64 1 (hypot.f64 ky (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/6 (pow.f64 ky 3)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 th (pow.f64 (sin.f64 ky) 2))) th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(+.f64 (*.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) (*.f64 (sin.f64 ky) th)) (*.f64 -1 (*.f64 (sin.f64 ky) th)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(pow.f64 (pow.f64 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))) 3) 1/3)
Outputs
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 th)
Calls

8 calls:

249.0ms
(sin.f64 th)
248.0ms
(sin.f64 th)
247.0ms
kx
203.0ms
ky
173.0ms
(sin.f64 kx)
Results
ErrorSegmentsBranch
29.0b5kx
19.8b3ky
18.6b3th
15.6b3(sin.f64 ky)
15.6b3(sin.f64 ky)
28.3b3(sin.f64 kx)
17.5b5(sin.f64 th)
17.5b5(sin.f64 th)
Compiler

Compiled 855 to 319 computations (62.7% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.0146572353006865e-10
0.02352448911389513
0.0ms
-0.00018762747171814642
-6.735562372731843e-21
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes1.8s (4.7%)

Counts
90 → 5
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(sqrt.f64 (pow.f64 (*.f64 th (/.f64 ky kx)) 2))
(pow.f64 (sqrt.f64 (*.f64 th (/.f64 ky kx))) 2)
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky kx))) 3)
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 ky ky))) (*.f64 (sin.f64 ky) th))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (*.f64 1/6 kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 th kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) th))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky)))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (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 (*.f64 (sin.f64 ky) th) (hypot.f64 ky (sin.f64 kx)))
(*.f64 th (sqrt.f64 (pow.f64 (/.f64 ky (sin.f64 kx)) 2)))
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))) 3)
(*.f64 th (pow.f64 (cbrt.f64 (/.f64 ky (sin.f64 kx))) 3))
(/.f64 (sin.f64 th) (*.f64 (sin.f64 kx) (/.f64 1 (sin.f64 ky))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(/.f64 (/.f64 (*.f64 th ky) (pow.f64 (cbrt.f64 kx) 2)) (cbrt.f64 kx))
(*.f64 (/.f64 1 (hypot.f64 ky (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/6 (pow.f64 ky 3)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 th (pow.f64 (sin.f64 ky) 2))) th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(+.f64 (*.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) (*.f64 (sin.f64 ky) th)) (*.f64 -1 (*.f64 (sin.f64 ky) th)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
Outputs
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(sin.f64 th)
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))
(sin.f64 th)
Calls

8 calls:

314.0ms
(sin.f64 ky)
301.0ms
ky
258.0ms
(sin.f64 kx)
228.0ms
(sin.f64 ky)
200.0ms
th
Results
ErrorSegmentsBranch
33.3b3kx
31.2b4ky
26.9b3th
26.9b5(sin.f64 ky)
26.9b5(sin.f64 ky)
31.5b4(sin.f64 kx)
26.9b3(sin.f64 th)
26.9b3(sin.f64 th)
Compiler

Compiled 824 to 312 computations (62.1% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
5.176267504225426e-34
3.1471768398825256e-29
0.0ms
5.957458576306874e-105
1.2032415891886127e-96
0.0ms
1.0433937596832839e-187
3.48767946494535e-186
0.0ms
-1.5443946968249594e-189
-1.0577401654341066e-189
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes1.5s (3.9%)

Counts
89 → 5
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(sqrt.f64 (pow.f64 (*.f64 th (/.f64 ky kx)) 2))
(pow.f64 (sqrt.f64 (*.f64 th (/.f64 ky kx))) 2)
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky kx))) 3)
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 ky ky))) (*.f64 (sin.f64 ky) th))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (*.f64 1/6 kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 th kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) th))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky)))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (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 (*.f64 (sin.f64 ky) th) (hypot.f64 ky (sin.f64 kx)))
(*.f64 th (sqrt.f64 (pow.f64 (/.f64 ky (sin.f64 kx)) 2)))
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))) 3)
(*.f64 th (pow.f64 (cbrt.f64 (/.f64 ky (sin.f64 kx))) 3))
(/.f64 (sin.f64 th) (*.f64 (sin.f64 kx) (/.f64 1 (sin.f64 ky))))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (sin.f64 ky) (*.f64 (/.f64 1 (sin.f64 kx)) (sin.f64 th)))
(/.f64 (/.f64 (*.f64 th ky) (pow.f64 (cbrt.f64 kx) 2)) (cbrt.f64 kx))
(*.f64 (/.f64 1 (hypot.f64 ky (sin.f64 kx))) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (*.f64 -1/6 (pow.f64 ky 3)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (+.f64 th (*.f64 -1/6 (pow.f64 th 3))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 ky (*.f64 -1/6 (pow.f64 ky 3))))
(fma.f64 -1/2 (*.f64 (*.f64 kx kx) (/.f64 th (pow.f64 (sin.f64 ky) 2))) th)
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 th (pow.f64 kx 2)) (pow.f64 (sin.f64 ky) 2))) th)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 th) kx)) (/.f64 (sin.f64 th) kx)))
(+.f64 (*.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) (*.f64 (sin.f64 ky) th)) (*.f64 -1 (*.f64 (sin.f64 ky) th)))
Outputs
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 ky (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(sin.f64 th)
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 ky (sin.f64 kx)))
(sin.f64 th)
Calls

8 calls:

252.0ms
(sin.f64 ky)
251.0ms
ky
207.0ms
(sin.f64 ky)
178.0ms
(sin.f64 th)
153.0ms
(sin.f64 th)
Results
ErrorSegmentsBranch
39.1b3kx
35.6b6ky
40.4b3th
35.0b5(sin.f64 ky)
35.0b5(sin.f64 ky)
37.3b3(sin.f64 kx)
40.4b3(sin.f64 th)
40.4b3(sin.f64 th)
Compiler

Compiled 814 to 309 computations (62% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
5.176267504225426e-34
3.1471768398825256e-29
0.0ms
5.957458576306874e-105
1.2032415891886127e-96
0.0ms
1.0433937596832839e-187
3.48767946494535e-186
0.0ms
-2.667772034673656e-174
-2.0540302369352747e-178
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes825.0ms (2.1%)

Counts
73 → 2
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(sqrt.f64 (pow.f64 (*.f64 th (/.f64 ky kx)) 2))
(pow.f64 (sqrt.f64 (*.f64 th (/.f64 ky kx))) 2)
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky kx))) 3)
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 ky ky))) (*.f64 (sin.f64 ky) th))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (*.f64 1/6 kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 th kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) th))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky)))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (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)))
Outputs
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
Calls

7 calls:

147.0ms
ky
121.0ms
(sin.f64 ky)
120.0ms
(sin.f64 th)
117.0ms
(sin.f64 th)
113.0ms
th
Results
ErrorSegmentsBranch
39.1b3kx
39.4b3ky
43.3b3th
38.6b2(sin.f64 ky)
38.5b2(sin.f64 kx)
43.3b3(sin.f64 th)
43.3b3(sin.f64 th)
Compiler

Compiled 625 to 228 computations (63.5% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.683750303132639e-50
4.130272258048294e-45
Compiler

Compiled 25 to 19 computations (24% saved)

regimes861.0ms (2.2%)

Counts
71 → 2
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(sqrt.f64 (pow.f64 (*.f64 th (/.f64 ky kx)) 2))
(pow.f64 (sqrt.f64 (*.f64 th (/.f64 ky kx))) 2)
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky kx))) 3)
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 ky ky))) (*.f64 (sin.f64 ky) th))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (*.f64 1/6 kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 th kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) th))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky)))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
Outputs
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky)))
Calls

7 calls:

166.0ms
kx
135.0ms
ky
128.0ms
(sin.f64 th)
121.0ms
(sin.f64 th)
104.0ms
(sin.f64 ky)
Results
ErrorSegmentsBranch
39.1b3kx
39.4b3ky
43.3b3th
38.6b2(sin.f64 ky)
38.5b2(sin.f64 kx)
43.3b3(sin.f64 th)
43.3b3(sin.f64 th)
Compiler

Compiled 609 to 225 computations (63.1% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.683750303132639e-50
4.130272258048294e-45
Compiler

Compiled 25 to 19 computations (24% saved)

regimes1.3s (3.3%)

Counts
69 → 2
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(sqrt.f64 (pow.f64 (*.f64 th (/.f64 ky kx)) 2))
(pow.f64 (sqrt.f64 (*.f64 th (/.f64 ky kx))) 2)
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky kx))) 3)
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 ky ky))) (*.f64 (sin.f64 ky) th))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (*.f64 1/6 kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 th kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) th))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky)))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
Outputs
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
Calls

7 calls:

236.0ms
ky
231.0ms
(sin.f64 th)
185.0ms
kx
169.0ms
(sin.f64 th)
147.0ms
(sin.f64 ky)
Results
ErrorSegmentsBranch
39.1b3kx
39.4b3ky
43.3b3th
38.6b2(sin.f64 ky)
38.5b2(sin.f64 kx)
43.3b3(sin.f64 th)
43.3b3(sin.f64 th)
Compiler

Compiled 593 to 222 computations (62.6% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.683750303132639e-50
4.130272258048294e-45
Compiler

Compiled 25 to 19 computations (24% saved)

regimes1.7s (4.3%)

Counts
67 → 2
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(sqrt.f64 (pow.f64 (*.f64 th (/.f64 ky kx)) 2))
(pow.f64 (sqrt.f64 (*.f64 th (/.f64 ky kx))) 2)
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky kx))) 3)
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 ky ky))) (*.f64 (sin.f64 ky) th))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (*.f64 1/6 kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 th kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) th))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky)))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
Outputs
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(sin.f64 th)
Calls

8 calls:

366.0ms
ky
272.0ms
(sin.f64 th)
234.0ms
(sin.f64 th)
221.0ms
th
138.0ms
(sin.f64 ky)
Results
ErrorSegmentsBranch
39.5b3kx
39.4b3ky
43.3b4th
38.6b2(sin.f64 ky)
39.2b3(sin.f64 kx)
39.2b3(sin.f64 kx)
43.3b4(sin.f64 th)
43.3b4(sin.f64 th)
Compiler

Compiled 582 to 224 computations (61.5% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0433937596832839e-187
3.48767946494535e-186
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes1.6s (4.1%)

Counts
66 → 3
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) th) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) kx))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) kx)
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(sqrt.f64 (pow.f64 (*.f64 th (/.f64 ky kx)) 2))
(pow.f64 (sqrt.f64 (*.f64 th (/.f64 ky kx))) 2)
(pow.f64 (cbrt.f64 (*.f64 th (/.f64 ky kx))) 3)
(*.f64 kx (*.f64 1/6 (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 1/6 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) kx)))
(/.f64 1 (/.f64 (sin.f64 kx) (*.f64 (sin.f64 ky) th)))
(*.f64 (/.f64 1 (sin.f64 ky)) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (*.f64 ky ky))) (*.f64 (sin.f64 ky) th))
(-.f64 (+.f64 1 (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))) 1)
(/.f64 (*.f64 (sin.f64 th) (+.f64 (*.f64 -1/6 (pow.f64 ky 3)) ky)) kx)
(*.f64 (sin.f64 ky) (+.f64 (*.f64 th (*.f64 1/6 kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (sin.f64 ky) (+.f64 (*.f64 1/6 (*.f64 th kx)) (/.f64 (sin.f64 th) kx)))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 (sin.f64 ky) th))
(*.f64 (sqrt.f64 (/.f64 1 (+.f64 (*.f64 ky ky) (*.f64 kx kx)))) (*.f64 (sin.f64 ky) th))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 ky 3) th)) (*.f64 th ky)))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky (sin.f64 kx)))))
Outputs
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky)
(sin.f64 th)
Calls

9 calls:

301.0ms
ky
195.0ms
(sin.f64 ky)
191.0ms
th
189.0ms
(sin.f64 ky)
154.0ms
kx
Results
ErrorSegmentsBranch
40.9b3kx
39.4b3ky
43.3b4th
38.0b3(sin.f64 ky)
38.0b3(sin.f64 ky)
40.6b3(sin.f64 kx)
40.6b3(sin.f64 kx)
43.3b4(sin.f64 th)
43.3b4(sin.f64 th)
Compiler

Compiled 579 to 226 computations (61% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0433937596832839e-187
3.48767946494535e-186
0.0ms
-2.63393790931645e-114
-6.171322004673093e-115
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes888.0ms (2.3%)

Counts
39 → 3
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 (sin.f64 th) kx) (sin.f64 ky))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) th))
Outputs
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky))
(sin.f64 th)
Calls

9 calls:

126.0ms
(sin.f64 th)
116.0ms
(sin.f64 th)
115.0ms
(sin.f64 ky)
109.0ms
th
98.0ms
ky
Results
ErrorSegmentsBranch
40.9b3kx
39.4b3ky
44.1b5th
38.0b3(sin.f64 ky)
38.0b3(sin.f64 ky)
40.7b3(sin.f64 kx)
40.7b3(sin.f64 kx)
44.1b5(sin.f64 th)
44.1b5(sin.f64 th)
Compiler

Compiled 324 to 138 computations (57.4% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0433937596832839e-187
3.48767946494535e-186
0.0ms
-2.63393790931645e-114
-6.171322004673093e-115
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes681.0ms (1.8%)

Counts
35 → 2
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
Outputs
(*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 th)
Calls

7 calls:

131.0ms
(sin.f64 th)
122.0ms
th
113.0ms
ky
109.0ms
(sin.f64 kx)
82.0ms
(sin.f64 kx)
Results
ErrorSegmentsBranch
43.7b3kx
42.4b3ky
44.1b5th
41.9b2(sin.f64 ky)
43.4b3(sin.f64 kx)
43.4b3(sin.f64 kx)
44.1b5(sin.f64 th)
Compiler

Compiled 286 to 125 computations (56.3% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0433937596832839e-187
3.48767946494535e-186
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes725.0ms (1.9%)

Counts
34 → 3
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(*.f64 (/.f64 1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 1 kx) (*.f64 (sin.f64 ky) th))
(*.f64 (/.f64 -1 ky) (*.f64 (sin.f64 ky) th))
(*.f64 -1 (/.f64 (*.f64 (sin.f64 ky) th) ky))
(*.f64 (/.f64 1 (sin.f64 kx)) (*.f64 th ky))
(*.f64 (-.f64 (/.f64 1 kx) 1) (*.f64 (sin.f64 ky) th))
(*.f64 th (-.f64 (+.f64 1 (/.f64 ky (sin.f64 kx))) 1))
(*.f64 (-.f64 (+.f64 1 (/.f64 1 (sin.f64 kx))) 1) (*.f64 th ky))
(*.f64 (sin.f64 ky) (+.f64 (/.f64 th kx) (*.f64 th (*.f64 kx 1/6))))
(exp.f64 (log.f64 (*.f64 th (/.f64 ky kx))))
Outputs
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th))
(/.f64 th (/.f64 (sin.f64 kx) ky))
(sin.f64 th)
Calls

8 calls:

133.0ms
(sin.f64 th)
111.0ms
(sin.f64 kx)
102.0ms
(sin.f64 kx)
96.0ms
th
79.0ms
ky
Results
ErrorSegmentsBranch
44.4b3kx
42.4b3ky
44.5b5th
41.0b3(sin.f64 ky)
41.0b3(sin.f64 ky)
44.1b3(sin.f64 kx)
44.1b3(sin.f64 kx)
44.5b5(sin.f64 th)
Compiler

Compiled 284 to 127 computations (55.3% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0433937596832839e-187
3.48767946494535e-186
0.0ms
-2.63393790931645e-114
-6.171322004673093e-115
Compiler

Compiled 24 to 19 computations (20.8% saved)

regimes313.0ms (0.8%)

Counts
23 → 3
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(*.f64 (/.f64 th ky) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) ky)
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(*.f64 th (/.f64 (sin.f64 ky) kx))
(/.f64 (*.f64 ky th) (sin.f64 kx))
(*.f64 th (/.f64 ky (sin.f64 kx)))
Outputs
(sin.f64 th)
(/.f64 th (/.f64 (sin.f64 kx) ky))
(sin.f64 th)
Calls

8 calls:

48.0ms
(sin.f64 th)
45.0ms
(sin.f64 kx)
45.0ms
(sin.f64 kx)
43.0ms
th
37.0ms
(sin.f64 ky)
Results
ErrorSegmentsBranch
44.4b3kx
42.4b3ky
45.5b3th
42.6b2(sin.f64 ky)
42.6b2(sin.f64 ky)
44.1b3(sin.f64 kx)
44.1b3(sin.f64 kx)
45.5b3(sin.f64 th)
Compiler

Compiled 186 to 86 computations (53.8% saved)

bsearch399.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
152.0ms
1.0433937596832839e-187
3.48767946494535e-186
247.0ms
-0.4752247818658324
-0.00018762747281902148
Compiler

Compiled 25 to 19 computations (24% saved)

regimes293.0ms (0.8%)

Counts
16 → 3
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(*.f64 (/.f64 th kx) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 ky) th) kx)
Outputs
(sin.f64 th)
(/.f64 (*.f64 th ky) (sin.f64 kx))
(sin.f64 th)
Calls

8 calls:

83.0ms
th
40.0ms
(sin.f64 kx)
38.0ms
(sin.f64 th)
35.0ms
(sin.f64 kx)
28.0ms
kx
Results
ErrorSegmentsBranch
44.5b3kx
42.5b3ky
45.8b3th
42.7b2(sin.f64 ky)
42.7b2(sin.f64 ky)
44.1b3(sin.f64 kx)
44.1b3(sin.f64 kx)
45.8b3(sin.f64 th)
Compiler

Compiled 144 to 74 computations (48.6% saved)

bsearch387.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
218.0ms
1.0433937596832839e-187
3.48767946494535e-186
169.0ms
-0.4752247818658324
-0.00018762747281902148
Compiler

Compiled 25 to 19 computations (24% saved)

regimes155.0ms (0.4%)

Counts
13 → 3
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
(sin.f64 th)
Outputs
(sin.f64 th)
(/.f64 th (/.f64 kx ky))
(sin.f64 th)
Calls

4 calls:

62.0ms
ky
33.0ms
(sin.f64 th)
33.0ms
th
23.0ms
kx
Results
ErrorSegmentsBranch
45.7b3kx
43.3b3ky
46.0b3th
46.0b3(sin.f64 th)
Compiler

Compiled 106 to 52 computations (50.9% saved)

bsearch382.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
159.0ms
1.0433937596832839e-187
3.48767946494535e-186
224.0ms
-0.4752247818658324
-0.00018762747281902148
Compiler

Compiled 25 to 19 computations (24% saved)

regimes68.0ms (0.2%)

Accuracy

Total -11.8b remaining (-23%)

Threshold costs -11.8b (-23%)

Counts
12 → 3
Calls
Call 1
Inputs
th
(/.f64 th (/.f64 kx ky))
(*.f64 ky (/.f64 th kx))
(/.f64 (*.f64 th ky) kx)
(*.f64 th (/.f64 ky kx))
(/.f64 (*.f64 ky th) kx)
(*.f64 (/.f64 1 kx) (*.f64 th ky))
(/.f64 1 (/.f64 kx (*.f64 th ky)))
(-.f64 (+.f64 1 (*.f64 th (/.f64 ky kx))) 1)
(*.f64 (+.f64 (*.f64 1/6 kx) (/.f64 1 kx)) (*.f64 th ky))
(*.f64 th (+.f64 (/.f64 ky kx) (*.f64 1/6 (*.f64 kx ky))))
(+.f64 (*.f64 1/6 (*.f64 kx (*.f64 th ky))) (/.f64 (*.f64 th ky) kx))
Outputs
th
(/.f64 th (/.f64 kx ky))
th
Calls

3 calls:

22.0ms
th
21.0ms
ky
21.0ms
kx
Results
ErrorSegmentsBranch
52.1b3kx
51.1b3ky
54.1b2th
Compiler

Compiled 99 to 47 computations (52.5% saved)

bsearch290.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
144.0ms
3.48767946494535e-186
7.046182040906754e-173
146.0ms
-873052714622.2931
-82030906995.42467
Compiler

Compiled 25 to 19 computations (24% saved)

simplify34.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0116780
1137780
2141780
3144780
4145780
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(if (<=.f64 (sin.f64 ky) -1475739525896764160/18446744073709551616) (/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th)))) (if (<=.f64 (sin.f64 ky) 4835703278458517/9671406556917033397649408) (/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)))) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -1475739525896764160/18446744073709551616) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (if (<=.f64 (sin.f64 ky) 4835703278458517/9671406556917033397649408) (/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)))) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -7378697629483821/73786976294838206464) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (if (<=.f64 (sin.f64 ky) 4835703278458517/9671406556917033397649408) (/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 ky))) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -7378697629483821/73786976294838206464) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (if (<=.f64 (sin.f64 ky) 4835703278458517/9671406556917033397649408) (/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -3762342382584839/2508228255056559327717299405517639477515382672702395372151508761915556027554073725754578846110147691358081325939263447624692646145908262187541873345685902047135936580242368983360130194608842238078734041088) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (if (<=.f64 (sin.f64 ky) 3919106648525874/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (if (<=.f64 (sin.f64 ky) 6455624695217271/645562469521727147413979793000752968582426448207305878207664839135161905504210298657411338320034457858975792993186873344) (sin.f64 th) (if (<=.f64 (sin.f64 ky) 1461501637330903/1461501637330902918203684832716283019655932542976) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) -9124881235244390400/4562440617622195218641171605700291324893228507248559930579192517899275167208677386505912811317371399778642309573594407310688704721375437998252661319722214188251994674360264950082874192246603776) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 ky (sin.f64 kx))) (if (<=.f64 (sin.f64 ky) 3919106648525874/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (if (<=.f64 (sin.f64 ky) 6455624695217271/645562469521727147413979793000752968582426448207305878207664839135161905504210298657411338320034457858975792993186873344) (sin.f64 th) (if (<=.f64 (sin.f64 ky) 1461501637330903/1461501637330902918203684832716283019655932542976) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 ky (sin.f64 kx))) (sin.f64 th)))))
(if (<=.f64 (sin.f64 kx) 1347997333357531904/26959946667150639794667015087019630673637144422540572481103610249216) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))
(if (<=.f64 (sin.f64 kx) 1347997333357531904/26959946667150639794667015087019630673637144422540572481103610249216) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky)) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(if (<=.f64 (sin.f64 kx) 1347997333357531904/26959946667150639794667015087019630673637144422540572481103610249216) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(if (<=.f64 (sin.f64 ky) 3919106648525874/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))) (sin.f64 th))
(if (<=.f64 (sin.f64 ky) -2772669694120815/1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912) (/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th)) (if (<=.f64 (sin.f64 ky) 3919106648525874/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -2772669694120815/1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912) (/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th)) (if (<=.f64 (sin.f64 ky) 3919106648525874/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) 3919106648525874/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(if (<=.f64 (sin.f64 ky) -2772669694120815/1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912) (/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th)) (if (<=.f64 (sin.f64 ky) 3919106648525874/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 th (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(if (<=.f64 ky -8766349928563458048/18446744073709551616) (sin.f64 th) (if (<=.f64 ky 2044585710302583/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 th (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(if (<=.f64 ky -8766349928563458048/18446744073709551616) (sin.f64 th) (if (<=.f64 ky 2044585710302583/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 (*.f64 th ky) (sin.f64 kx)) (sin.f64 th)))
(if (<=.f64 ky -8766349928563458048/18446744073709551616) (sin.f64 th) (if (<=.f64 ky 2044585710302583/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 th (/.f64 kx ky)) (sin.f64 th)))
(if (<=.f64 ky -7152047838185825/8192) th (if (<=.f64 ky 68342938894972416/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 th (/.f64 kx ky)) th))
th
Outputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(if (<=.f64 (sin.f64 ky) -1475739525896764160/18446744073709551616) (/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 1/6 th)))) (if (<=.f64 (sin.f64 ky) 4835703278458517/9671406556917033397649408) (/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)))) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -5764607523034235/72057594037927936) (/.f64 (sin.f64 ky) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (/.f64 1 th) (*.f64 th 1/6)))) (if (<=.f64 (sin.f64 ky) 4835703278458517/9671406556917033397649408) (/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (*.f64 ky 1/6) (/.f64 1 ky)))) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -1475739525896764160/18446744073709551616) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (if (<=.f64 (sin.f64 ky) 4835703278458517/9671406556917033397649408) (/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (*.f64 1/6 ky) (/.f64 1 ky)))) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -5764607523034235/72057594037927936) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (if (<=.f64 (sin.f64 ky) 4835703278458517/9671406556917033397649408) (/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (+.f64 (*.f64 ky 1/6) (/.f64 1 ky)))) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -7378697629483821/73786976294838206464) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (if (<=.f64 (sin.f64 ky) 4835703278458517/9671406556917033397649408) (/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 1 ky))) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -7378697629483821/73786976294838206464) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (if (<=.f64 (sin.f64 ky) 4835703278458517/9671406556917033397649408) (/.f64 (*.f64 (sin.f64 th) ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -3762342382584839/2508228255056559327717299405517639477515382672702395372151508761915556027554073725754578846110147691358081325939263447624692646145908262187541873345685902047135936580242368983360130194608842238078734041088) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (if (<=.f64 (sin.f64 ky) 3919106648525874/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (if (<=.f64 (sin.f64 ky) 6455624695217271/645562469521727147413979793000752968582426448207305878207664839135161905504210298657411338320034457858975792993186873344) (sin.f64 th) (if (<=.f64 (sin.f64 ky) 1461501637330903/1461501637330902918203684832716283019655932542976) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) -3762342382584839/2508228255056559327717299405517639477515382672702395372151508761915556027554073725754578846110147691358081325939263447624692646145908262187541873345685902047135936580242368983360130194608842238078734041088) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (if (<=.f64 (sin.f64 ky) 1959553324262937/9797766621314684873895700802803279209044463565243731922466831101232640732633100491228823617617764419367505179450247842283955649007454149170085442756585554871624752266571753841250508572690789992495054848) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))) (if (<=.f64 (sin.f64 ky) 6455624695217271/645562469521727147413979793000752968582426448207305878207664839135161905504210298657411338320034457858975792993186873344) (sin.f64 th) (if (<=.f64 (sin.f64 ky) 1461501637330903/1461501637330902918203684832716283019655932542976) (/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) -9124881235244390400/4562440617622195218641171605700291324893228507248559930579192517899275167208677386505912811317371399778642309573594407310688704721375437998252661319722214188251994674360264950082874192246603776) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 ky (sin.f64 kx))) (if (<=.f64 (sin.f64 ky) 3919106648525874/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (if (<=.f64 (sin.f64 ky) 6455624695217271/645562469521727147413979793000752968582426448207305878207664839135161905504210298657411338320034457858975792993186873344) (sin.f64 th) (if (<=.f64 (sin.f64 ky) 1461501637330903/1461501637330902918203684832716283019655932542976) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 ky (sin.f64 kx))) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) -4455508415646675/2227754207823337509102134573095845373483021732054960903603121346630505452738612005129840239901060253798165190221481644194672219102234100585084307285020612396607419274589973120157653414182912) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 ky (sin.f64 kx))) (if (<=.f64 (sin.f64 ky) 1959553324262937/9797766621314684873895700802803279209044463565243731922466831101232640732633100491228823617617764419367505179450247842283955649007454149170085442756585554871624752266571753841250508572690789992495054848) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))) (if (<=.f64 (sin.f64 ky) 6455624695217271/645562469521727147413979793000752968582426448207305878207664839135161905504210298657411338320034457858975792993186873344) (sin.f64 th) (if (<=.f64 (sin.f64 ky) 1461501637330903/1461501637330902918203684832716283019655932542976) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 ky (sin.f64 kx))) (sin.f64 th)))))
(if (<=.f64 (sin.f64 kx) 1347997333357531904/26959946667150639794667015087019630673637144422540572481103610249216) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))
(if (<=.f64 (sin.f64 kx) 5265614583427859/105312291668557186697918027683670432318895095400549111254310977536) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 ky)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))
(if (<=.f64 (sin.f64 kx) 1347997333357531904/26959946667150639794667015087019630673637144422540572481103610249216) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky)) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(if (<=.f64 (sin.f64 kx) 5265614583427859/105312291668557186697918027683670432318895095400549111254310977536) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 ky)) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sin.f64 ky))))
(if (<=.f64 (sin.f64 kx) 1347997333357531904/26959946667150639794667015087019630673637144422540572481103610249216) (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(if (<=.f64 (sin.f64 kx) 5265614583427859/105312291668557186697918027683670432318895095400549111254310977536) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 ky)) (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))))
(if (<=.f64 (sin.f64 ky) 3919106648525874/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))) (sin.f64 th))
(if (<=.f64 (sin.f64 ky) 1959553324262937/9797766621314684873895700802803279209044463565243731922466831101232640732633100491228823617617764419367505179450247842283955649007454149170085442756585554871624752266571753841250508572690789992495054848) (/.f64 (sin.f64 ky) (/.f64 (sin.f64 kx) (sin.f64 th))) (sin.f64 th))
(if (<=.f64 (sin.f64 ky) -2772669694120815/1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912) (/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th)) (if (<=.f64 (sin.f64 ky) 3919106648525874/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) ky) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -2772669694120815/1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912) (/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th)) (if (<=.f64 (sin.f64 ky) 1959553324262937/9797766621314684873895700802803279209044463565243731922466831101232640732633100491228823617617764419367505179450247842283955649007454149170085442756585554871624752266571753841250508572690789992495054848) (*.f64 ky (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -2772669694120815/1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912) (/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th)) (if (<=.f64 (sin.f64 ky) 3919106648525874/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -2772669694120815/1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912) (/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th)) (if (<=.f64 (sin.f64 ky) 1959553324262937/9797766621314684873895700802803279209044463565243731922466831101232640732633100491228823617617764419367505179450247842283955649007454149170085442756585554871624752266571753841250508572690789992495054848) (/.f64 (sin.f64 th) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) 3919106648525874/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(if (<=.f64 (sin.f64 ky) 1959553324262937/9797766621314684873895700802803279209044463565243731922466831101232640732633100491228823617617764419367505179450247842283955649007454149170085442756585554871624752266571753841250508572690789992495054848) (*.f64 th (/.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(if (<=.f64 (sin.f64 ky) -2772669694120815/1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912) (/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th)) (if (<=.f64 (sin.f64 ky) 3919106648525874/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 th (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(if (<=.f64 (sin.f64 ky) -2772669694120815/1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912) (/.f64 (neg.f64 (sin.f64 ky)) (/.f64 ky th)) (if (<=.f64 (sin.f64 ky) 1959553324262937/9797766621314684873895700802803279209044463565243731922466831101232640732633100491228823617617764419367505179450247842283955649007454149170085442756585554871624752266571753841250508572690789992495054848) (/.f64 th (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(if (<=.f64 ky -8766349928563458048/18446744073709551616) (sin.f64 th) (if (<=.f64 ky 2044585710302583/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 th (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(if (<=.f64 ky -535055537632047/1125899906842624) (sin.f64 th) (if (<=.f64 ky 2044585710302583/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 th (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(if (<=.f64 ky -8766349928563458048/18446744073709551616) (sin.f64 th) (if (<=.f64 ky 2044585710302583/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 (*.f64 th ky) (sin.f64 kx)) (sin.f64 th)))
(if (<=.f64 ky -535055537632047/1125899906842624) (sin.f64 th) (if (<=.f64 ky 2044585710302583/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 (*.f64 th ky) (sin.f64 kx)) (sin.f64 th)))
(if (<=.f64 ky -8766349928563458048/18446744073709551616) (sin.f64 th) (if (<=.f64 ky 2044585710302583/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 th (/.f64 kx ky)) (sin.f64 th)))
(if (<=.f64 ky -535055537632047/1125899906842624) (sin.f64 th) (if (<=.f64 ky 2044585710302583/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 th (/.f64 kx ky)) (sin.f64 th)))
(if (<=.f64 ky -7152047838185825/8192) th (if (<=.f64 ky 68342938894972416/19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696) (/.f64 th (/.f64 kx ky)) th))
(if (<=.f64 ky -7152047838185825/8192) th (if (<=.f64 ky 133482302529243/38272525864510487788655081260950309410329935801733327822136058989190002861848048793862592256319392263154317107227530633921701753935367770195646260767912323717284188541295913442384799112073398408183808) (/.f64 th (/.f64 kx ky)) th))
th
Compiler

Compiled 557 to 305 computations (45.2% saved)

soundness0.0ms (0%)

end166.0ms (0.4%)

Compiler

Compiled 500 to 168 computations (66.4% saved)

Profiling

Loading profile data...