Toniolo and Linder, Equation (3b), real

Time bar (total: 11.2s)

start0.0ms (0%)

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

analyze265.0ms (2.4%)

Memory
8.2MiB live, 468.8MiB allocated; 56ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
25%25%74.9%0.1%0%0%0%5
43.8%43.7%56.2%0.1%0%0%0%6
43.8%43.7%56.2%0.1%0%0%0%7
53.1%53%46.8%0.1%0%0%0%8
60.9%60.8%39%0.1%0%0%0%9
60.9%60.8%39%0.1%0%0%0%10
64.8%64.7%35.1%0.1%0%0%0%11
68.4%68.3%31.6%0.1%0%0%0%12
Compiler

Compiled 18 to 14 computations (22.2% saved)

sample1.9s (16.7%)

Memory
49.0MiB live, 2 483.1MiB allocated; 364ms collecting garbage
Samples
1.5s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.2s
ival-sin: 714.0ms (61% of total)
ival-pow2: 201.0ms (17.2% of total)
ival-mult: 85.0ms (7.3% of total)
ival-div: 65.0ms (5.6% of total)
ival-sqrt: 56.0ms (4.8% of total)
ival-add: 37.0ms (3.2% of total)
ival-true: 7.0ms (0.6% of total)
ival-assert: 4.0ms (0.3% of total)
adjust: 3.0ms (0.3% of total)
Bogosity

explain216.0ms (1.9%)

Memory
8.3MiB live, 176.5MiB allocated; 19ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
200-2(-9.530371838789991e-161 -2.7141449302515547e-189 3.465987413076364e+71)(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
00-0-(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
00-0-(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
00-0-(sin.f64 kx)
00-0-(sin.f64 th)
00-0-(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
00-0-(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
00-0-th
00-0-#s(literal 2 binary64)
00-0-(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
00-0-(sin.f64 ky)
00-0-ky
00-0-kx
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))uflow-rescue180
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))underflow61
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))underflow62
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))underflow18
Confusion
Predicted +Predicted -
+182
-0236
Precision
1.0
Recall
0.9
Confusion?
Predicted +Predicted MaybePredicted -
+1802
-00236
Precision?
1.0
Recall?
0.9
Freqs
test
numberfreq
0238
118
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
98.0ms512×0valid
Compiler

Compiled 152 to 43 computations (71.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 79.0ms
ival-sin: 33.0ms (41.9% of total)
ival-pow2: 33.0ms (41.9% of total)
ival-div: 3.0ms (3.8% of total)
ival-mult: 3.0ms (3.8% of total)
ival-sqrt: 3.0ms (3.8% of total)
ival-add: 2.0ms (2.5% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

preprocess230.0ms (2.1%)

Memory
-13.5MiB live, 127.5MiB allocated; 13ms collecting garbage
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045153
189147
2211147
3416147
4898147
52624147
65843147
01316
02216
13016
24816
310316
420516
544616
6115816
7293016
8699416
0807211
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
Symmetry

(abs kx)

(negabs th)

(negabs ky)

Compiler

Compiled 16 to 13 computations (18.8% saved)

eval0.0ms (0%)

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

Compiled 0 to 3 computations (-∞% saved)

prune1.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
92.5%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Compiler

Compiled 16 to 13 computations (18.8% saved)

simplify107.0ms (1%)

Memory
-11.4MiB live, 78.3MiB allocated; 9ms collecting garbage
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
cost-diff5
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01366
02266
13066
24866
310366
420566
544666
6115866
7293066
8699466
0807251
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 th)
th
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 th)
th

localize46.0ms (0.4%)

Memory
42.3MiB live, 42.3MiB allocated; 0ms collecting garbage
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.17416000976844204
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
accuracy0.2584762695368841
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy0.2890625
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy4.541610725765462
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
Samples
37.0ms256×0valid
Compiler

Compiled 68 to 15 computations (77.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 27.0ms
ival-sin: 16.0ms (58.3% of total)
ival-pow2: 5.0ms (18.2% of total)
ival-div: 2.0ms (7.3% of total)
ival-mult: 2.0ms (7.3% of total)
ival-sqrt: 2.0ms (7.3% of total)
ival-add: 1.0ms (3.6% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series83.0ms (0.7%)

Memory
-11.0MiB live, 34.4MiB allocated; 5ms collecting garbage
Counts
6 → 45
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sin.f64 ky)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Outputs
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(pow (sin kx) 2)
(sin kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(pow (sin ky) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
Calls

9 calls:

TimeVariablePointExpression
56.0ms
kx
@-inf
((sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (pow (sin ky) 2) (pow (sin kx) 2))
6.0ms
ky
@0
((sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (pow (sin ky) 2) (pow (sin kx) 2))
4.0ms
th
@-inf
((sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (pow (sin ky) 2) (pow (sin kx) 2))
4.0ms
kx
@inf
((sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (pow (sin ky) 2) (pow (sin kx) 2))
3.0ms
kx
@0
((sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (pow (sin ky) 2) (pow (sin kx) 2))

simplify214.0ms (1.9%)

Memory
2.1MiB live, 171.6MiB allocated; 42ms collecting garbage
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03171402
111341336
252361308
084061228
Stop Event
iter limit
node limit
Counts
45 → 44
Calls
Call 1
Inputs
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(pow (sin kx) 2)
(sin kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(pow (sin ky) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
Outputs
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (/.f64 (fma.f64 (*.f64 kx kx) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) #s(literal 1/2 binary64)) (sin.f64 ky)) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 ky)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 (*.f64 kx kx) (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (*.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th)))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) (*.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))))) (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(pow kx 2)
(*.f64 kx kx)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) kx) kx) #s(literal 1/3 binary64)) (*.f64 kx kx))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin kx)
(sin.f64 kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (/.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) #s(literal 1/2 binary64)) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 kx)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))
(/ (* ky (sin th)) (sin kx))
(*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 th) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx)) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal 1/12 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/120 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 th) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (sin.f64 th)) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (fma.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (sin.f64 th)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 (fma.f64 #s(literal -1/5040 binary64) (sin.f64 th) (/.f64 (*.f64 #s(literal -1/240 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (/.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 th) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(/ ky (sin kx))
(/.f64 ky (sin.f64 kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (neg.f64 (pow.f64 ky #s(literal 3 binary64))) (/.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/6 binary64)) (sin.f64 kx)) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (fma.f64 (+.f64 (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (fma.f64 (+.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))) (sin.f64 kx) (-.f64 (fma.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/5040 binary64) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (/.f64 ky (sin.f64 kx)))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)
(pow ky 2)
(*.f64 ky ky)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky))
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 (*.f64 (sin.f64 ky) th) th) #s(literal -1/6 binary64) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 (*.f64 (sin.f64 ky) th) th) #s(literal 1/120 binary64) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 (*.f64 (sin.f64 ky) th) th) #s(literal -1/6 binary64) (sin.f64 ky)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 ky) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) th) #s(literal -1/5040 binary64)))))) th)

rewrite346.0ms (3.1%)

Memory
0.7MiB live, 266.1MiB allocated; 112ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01349
02249
15949
231949
3312949
0893734
Stop Event
iter limit
node limit
iter limit
Counts
6 → 384
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sin.f64 ky)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Outputs
(*.f64 (pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/8 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/8 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) #s(literal 1/2 binary64)) (pow.f64 (+.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 12 binary64)))) #s(literal 1/2 binary64)) (pow.f64 (fma.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (/.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (+.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1/2 binary64)) (pow.f64 (+.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) #s(literal 1/2 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (neg.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) (pow.f64 (/.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (fma.f64 (neg.f64 (sin.f64 kx)) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (sin.f64 kx))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (sin.f64 kx))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (sin.f64 kx))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (sin.f64 ky))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))) (sin.f64 ky))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (sin.f64 kx))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (sin.f64 ky) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (sin.f64 ky) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (sin.f64 ky) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (sin.f64 ky) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(hypot.f64 (sin.f64 ky) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (sin.f64 kx) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (sin.f64 kx) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (sin.f64 kx) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(exp.f64 (*.f64 (log.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(+.f64 (cosh.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sinh.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(neg.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(neg.f64 (*.f64 (sin.f64 th) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(neg.f64 (*.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(+.f64 (cosh.f64 (-.f64 (log.f64 (sin.f64 ky)) (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sinh.f64 (-.f64 (log.f64 (sin.f64 ky)) (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
(*.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 ky))) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))
(*.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(*.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 (sin.f64 ky))))
(*.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) (fabs.f64 (sqrt.f64 (sin.f64 ky))))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 ky)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (sin.f64 ky)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1/2 binary64)))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(neg.f64 (neg.f64 (sin.f64 ky)))
(fma.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64) (*.f64 (cos.f64 ky) #s(literal 0 binary64)))
(fma.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64) (*.f64 (cos.f64 (+.f64 (PI.f64) ky)) #s(literal 0 binary64)))
(sin.f64 (neg.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (PI.f64)))
(sin.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (acos.f64 (cos.f64 ky)))
(sin.f64 (neg.f64 (neg.f64 ky)))
(sin.f64 (neg.f64 (+.f64 (PI.f64) ky)))
(sin.f64 (+.f64 (neg.f64 ky) (PI.f64)))
(sin.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)))
(sin.f64 ky)
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(-.f64 (*.f64 (cos.f64 ky) #s(literal 0 binary64)) (*.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)))
(-.f64 (*.f64 (cos.f64 (+.f64 (PI.f64) ky)) #s(literal 0 binary64)) (*.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)))
(-.f64 (*.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (cos.f64 ky) #s(literal 0 binary64)))
(fabs.f64 (neg.f64 (sin.f64 ky)))
(fabs.f64 (sin.f64 ky))
(cos.f64 (neg.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))
(cos.f64 (neg.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (+.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (asin.f64 (cos.f64 ky)))
(cos.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))
(cos.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(exp.f64 (log.f64 (sin.f64 ky)))
(+.f64 (*.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (cos.f64 ky) #s(literal 0 binary64)))
(+.f64 (*.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (cos.f64 (+.f64 (PI.f64) ky)) #s(literal 0 binary64)))
(+.f64 (cosh.f64 (log.f64 (sin.f64 ky))) (sinh.f64 (log.f64 (sin.f64 ky))))
(*.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (sin.f64 ky))
(*.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))
(*.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 ky)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 ky)))
(*.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)))
(*.f64 (sin.f64 ky) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(*.f64 (sin.f64 ky) (sin.f64 ky))
(pow.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 4 binary64))
(pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) (sin.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))) (sin.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 ky) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) (sin.f64 (+.f64 (neg.f64 ky) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (PI.f64) ky) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) (sin.f64 (+.f64 (+.f64 (PI.f64) ky) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 (neg.f64 ky)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (sin.f64 (+.f64 (neg.f64 (neg.f64 ky)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 (neg.f64 ky)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 (neg.f64 ky)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 (neg.f64 ky)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 (neg.f64 ky)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (sin.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (sin.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (sin.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 ky (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (sin.f64 (+.f64 ky (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 ky (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 ky (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 ky (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 ky (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 ky))) (cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 ky)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (PI.f64) ky))) (cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (PI.f64) ky)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 ky) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (neg.f64 ky) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (PI.f64) ky) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (+.f64 (PI.f64) ky) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (neg.f64 ky)) (neg.f64 (neg.f64 ky)))) (cos.f64 (+.f64 (neg.f64 (neg.f64 ky)) (neg.f64 (neg.f64 ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (neg.f64 ky)) (neg.f64 (+.f64 (PI.f64) ky)))) (cos.f64 (+.f64 (neg.f64 (neg.f64 ky)) (neg.f64 (+.f64 (PI.f64) ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (neg.f64 ky)) (+.f64 (neg.f64 ky) (PI.f64)))) (cos.f64 (+.f64 (neg.f64 (neg.f64 ky)) (+.f64 (neg.f64 ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (neg.f64 ky)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64)))) (cos.f64 (+.f64 (neg.f64 (neg.f64 ky)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (neg.f64 ky)) ky)) (cos.f64 (+.f64 (neg.f64 (neg.f64 ky)) ky))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) (neg.f64 (neg.f64 ky)))) (cos.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) (neg.f64 (neg.f64 ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) (neg.f64 (+.f64 (PI.f64) ky)))) (cos.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) (neg.f64 (+.f64 (PI.f64) ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (neg.f64 ky) (PI.f64)))) (cos.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (neg.f64 ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64)))) (cos.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) ky)) (cos.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) ky))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (neg.f64 (neg.f64 ky)))) (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) (neg.f64 (neg.f64 ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (neg.f64 (+.f64 (PI.f64) ky)))) (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) (neg.f64 (+.f64 (PI.f64) ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (neg.f64 ky) (PI.f64)))) (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (neg.f64 ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64)))) (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) ky)) (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) ky))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (neg.f64 (neg.f64 ky)))) (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (neg.f64 (neg.f64 ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (neg.f64 (+.f64 (PI.f64) ky)))) (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (neg.f64 (+.f64 (PI.f64) ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (neg.f64 ky) (PI.f64)))) (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (neg.f64 ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64)))) (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) ky)) (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) ky))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky (neg.f64 (neg.f64 ky)))) (cos.f64 (+.f64 ky (neg.f64 (neg.f64 ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky (neg.f64 (+.f64 (PI.f64) ky)))) (cos.f64 (+.f64 ky (neg.f64 (+.f64 (PI.f64) ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky (+.f64 (neg.f64 ky) (PI.f64)))) (cos.f64 (+.f64 ky (+.f64 (neg.f64 ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky (+.f64 (+.f64 (PI.f64) ky) (PI.f64)))) (cos.f64 (+.f64 ky (+.f64 (+.f64 (PI.f64) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) (cos.f64 (-.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))) (cos.f64 (-.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) (cos.f64 (-.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (cos.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 ky) (cos.f64 ky)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 3 binary64)))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64))))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (-.f64 (*.f64 (sinh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64))))) #s(literal -2 binary64))
(/.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (PI.f64) ky) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))) (sin.f64 (+.f64 (+.f64 (PI.f64) ky) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 ky) (+.f64 (PI.f64) ky))) (cos.f64 (+.f64 (neg.f64 ky) (+.f64 (PI.f64) ky)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (PI.f64) ky) (neg.f64 ky))) (cos.f64 (+.f64 (+.f64 (PI.f64) ky) (neg.f64 ky)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (PI.f64) ky) (+.f64 (PI.f64) ky))) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (PI.f64) ky)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))) (sin.f64 (+.f64 (neg.f64 ky) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(neg.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(fma.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (log.f64 (sin.f64 ky))) (cosh.f64 (log.f64 (sin.f64 ky)))) (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (sin.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))) (sin.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))))
(-.f64 #s(literal 1 binary64) (*.f64 (sin.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))) (sin.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))))
(-.f64 #s(literal 1 binary64) (*.f64 (sin.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))))
(-.f64 #s(literal 1 binary64) (*.f64 (sin.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))))
(-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (neg.f64 ky))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (+.f64 (PI.f64) ky))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (neg.f64 ky) (PI.f64))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (+.f64 (PI.f64) ky) (PI.f64))))))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (PI.f64) ky)))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 4 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal 2 binary64))) (log.f64 (sin.f64 ky))))
(exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 (cosh.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sinh.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))))
(+.f64 (sinh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(+.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))))
(*.f64 (pow.f64 (*.f64 (sin.f64 kx) (sqrt.f64 (sin.f64 kx))) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 kx)))
(*.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 kx))
(*.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(*.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(*.f64 (*.f64 (sin.f64 kx) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))
(*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (*.f64 (sqrt.f64 (sin.f64 kx)) (sin.f64 kx)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (*.f64 (sqrt.f64 (sin.f64 kx)) (sin.f64 kx)))
(*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(*.f64 (sin.f64 kx) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 4 binary64))
(pow.f64 (neg.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 kx) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 kx) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 kx (PI.f64)) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 kx (PI.f64)) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 kx) (neg.f64 kx))) (cos.f64 (+.f64 (neg.f64 kx) (neg.f64 kx)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 kx) (+.f64 kx (PI.f64)))) (cos.f64 (+.f64 (neg.f64 kx) (+.f64 kx (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 kx (PI.f64)) (neg.f64 kx))) (cos.f64 (+.f64 (+.f64 kx (PI.f64)) (neg.f64 kx)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 kx (PI.f64)) (+.f64 kx (PI.f64)))) (cos.f64 (+.f64 (+.f64 kx (PI.f64)) (+.f64 kx (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 kx) (cos.f64 kx)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (-.f64 (*.f64 (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(neg.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fma.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (log.f64 (sin.f64 kx))) (cosh.f64 (log.f64 (sin.f64 kx)))) (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(sqrt.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 kx) (cos.f64 kx)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (neg.f64 kx)))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64))))))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal 2 binary64))) (log.f64 (sin.f64 kx))))
(exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+.f64 (cosh.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64))) (sinh.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64))))
(+.f64 (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(+.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))

eval92.0ms (0.8%)

Memory
-25.8MiB live, 165.5MiB allocated; 20ms collecting garbage
Compiler

Compiled 12 601 to 2 762 computations (78.1% saved)

prune24.0ms (0.2%)

Memory
21.2MiB live, 67.9MiB allocated; 2ms collecting garbage
Pruning

20 alts after pruning (20 fresh and 0 done)

PrunedKeptTotal
New46320483
Fresh000
Picked101
Done000
Total46420484
Accuracy
100.0%
Counts
484 → 20
Alt Table
Click to see full alt table
StatusAccuracyProgram
95.6%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
65.0%
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
99.6%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
72.2%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (sin.f64 kx))) (sin.f64 th))
74.4%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))) (sin.f64 th))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
92.5%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))
67.2%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
41.1%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
84.7%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
52.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
30.0%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
32.0%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
72.1%
(*.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sin.f64 th))
22.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
29.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
91.9%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
21.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
49.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
29.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Compiler

Compiled 806 to 628 computations (22.1% saved)

simplify89.0ms (0.8%)

Memory
10.6MiB live, 151.5MiB allocated; 13ms collecting garbage
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky)))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))) (sin.f64 th))
cost-diff4
(pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64))
cost-diff0
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
cost-diff0
(sin.f64 th)
cost-diff0
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
cost-diff0
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
cost-diff0
(*.f64 kx kx)
cost-diff0
(*.f64 #s(literal -1/2 binary64) (*.f64 kx kx))
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
cost-diff1
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
cost-diff0
(sin.f64 th)
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
cost-diff0
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
035222
061196
1109196
2276196
31026196
43768196
56071196
08145194
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
(*.f64 #s(literal -1/2 binary64) (*.f64 kx kx))
#s(literal -1/2 binary64)
(*.f64 kx kx)
kx
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(sin.f64 th)
th
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 ky)
ky
#s(literal 2 binary64)
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 th)
th
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 ky)
ky
(sin.f64 kx)
kx
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky)))
(sin.f64 ky)
ky
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))
(pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64))
(neg.f64 (sqrt.f64 (sin.f64 kx)))
(sqrt.f64 (sin.f64 kx))
(sin.f64 kx)
kx
#s(literal 2 binary64)
(sin.f64 th)
th
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 th)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 th))
(*.f64 #s(literal -1/2 binary64) (*.f64 kx kx))
(*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
(*.f64 kx kx)
kx
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(sin.f64 th)
th
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 ky)
ky
#s(literal 2 binary64)
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 th)
th
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 ky)
ky
(sin.f64 kx)
kx
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 ky)
ky
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64))
(sin.f64 kx)
(neg.f64 (sqrt.f64 (sin.f64 kx)))
(sqrt.f64 (sin.f64 kx))
(sin.f64 kx)
kx
#s(literal 2 binary64)
(sin.f64 th)
th

localize108.0ms (1%)

Memory
-14.7MiB live, 222.5MiB allocated; 17ms collecting garbage
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.0546875
(sqrt.f64 (sin.f64 kx))
accuracy0.05859375
(/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky)))
accuracy0.109375
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))) (sin.f64 th))
accuracy0.42416000976844204
(pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64))
accuracy0.0
(sin.f64 kx)
accuracy0.02734375
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.213222509768442
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.228847509768442
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
accuracy0.2109375
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy3.392212008790179
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
accuracy7.237835853690778
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
accuracy31.95054757566201
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
accuracy0.0
(sin.f64 th)
accuracy30.586282708493034
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
accuracy0.0
(sin.f64 kx)
accuracy0.02734375
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.05859375
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.109375
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Samples
68.0ms191×0valid
20.0ms65×0invalid
Compiler

Compiled 281 to 32 computations (88.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 68.0ms
ival-sin: 21.0ms (30.9% of total)
ival-mult: 13.0ms (19.1% of total)
ival-pow2: 11.0ms (16.2% of total)
ival-div: 8.0ms (11.8% of total)
ival-hypot: 8.0ms (11.8% of total)
ival-sqrt: 3.0ms (4.4% of total)
ival-add: 2.0ms (2.9% of total)
ival-neg: 1.0ms (1.5% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series58.0ms (0.5%)

Memory
5.2MiB live, 51.5MiB allocated; 3ms collecting garbage
Counts
19 → 87
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 ky)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
(*.f64 #s(literal -1/2 binary64) (*.f64 kx kx))
(*.f64 kx kx)
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky)))
(sin.f64 kx)
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sqrt.f64 (sin.f64 kx))
Outputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(* -1/2 (pow kx 2))
(pow kx 2)
(/ (sin th) (sin ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(sqrt kx)
(+ (sqrt kx) (* -1/12 (sqrt (pow kx 5))))
(+ (sqrt kx) (* (pow kx 3) (+ (* -1/12 (sqrt (/ 1 kx))) (* 1/240 (sqrt (pow kx 3))))))
(+ (sqrt kx) (* (pow kx 3) (+ (* -1/12 (sqrt (/ 1 kx))) (* (pow kx 2) (+ (* -1/288 (sqrt (/ 1 kx))) (* 1/240 (sqrt (/ 1 kx))))))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2)))
(* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (/ (sin th) (pow kx 2))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sin kx)
(sqrt (sin kx))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(* -1/2 (/ (* (pow kx 2) (sin th)) (pow ky 2)))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (* -1/6 (* (pow kx 2) (sin th)))))) (pow ky 2))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (+ (* -1/6 (* (pow kx 2) (sin th))) (* 1/2 (* (pow ky 2) (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th)))))))))) (pow ky 2))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (+ (* -1/6 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (* (pow kx 2) (sin th))) (+ (* 2/135 (* (pow kx 2) (sin th))) (* 1/3 (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th))))))))) (* 1/2 (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th))))))))))) (pow ky 2))
(/ (sin th) (sin kx))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(/ (sin th) (pow ky 2))
(/ (+ (sin th) (* 1/3 (* (pow ky 2) (sin th)))) (pow ky 2))
(/ (+ (sin th) (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/9 (sin th)) (* 2/45 (sin th))))) (* -1/3 (sin th))))) (pow ky 2))
(/ (+ (sin th) (* (pow ky 2) (- (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/315 (sin th)) (+ (* 2/135 (sin th)) (* 1/3 (+ (* -1/9 (sin th)) (* 2/45 (sin th)))))))) (+ (* -1/9 (sin th)) (* 2/45 (sin th))))) (* -1/3 (sin th))))) (pow ky 2))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(/ (sin th) (pow (sin ky) 2))
(pow (sin ky) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
th
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(* th (+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2)))))
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) 1/6)))))
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (+ (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (+ 1/120 (* -1/240 (/ (pow kx 2) (pow (sin ky) 2)))))) 1/6)))))
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (+ (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (+ 1/120 (+ (* -1/240 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (* 1/10080 (/ (pow kx 2) (pow (sin ky) 2))) 1/5040)))))) 1/6)))))
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(/ th (pow (sin ky) 2))
(* th (+ (* -1/6 (/ (pow th 2) (pow (sin ky) 2))) (/ 1 (pow (sin ky) 2))))
(* th (+ (* (pow th 2) (- (* 1/120 (/ (pow th 2) (pow (sin ky) 2))) (* 1/6 (/ 1 (pow (sin ky) 2))))) (/ 1 (pow (sin ky) 2))))
(* th (+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/5040 (/ (pow th 2) (pow (sin ky) 2))) (* 1/120 (/ 1 (pow (sin ky) 2))))) (* 1/6 (/ 1 (pow (sin ky) 2))))) (/ 1 (pow (sin ky) 2))))
Calls

9 calls:

TimeVariablePointExpression
27.0ms
th
@0
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* -1/2 (* kx kx)) (* kx kx) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (neg (sqrt (sin kx))) 2) (* (/ (sin ky) (sqrt (+ (* (pow (neg (sqrt (sin kx))) 2) (pow (neg (sqrt (sin kx))) 2)) (* (sin ky) (sin ky))))) (sin th)) (/ (sin ky) (sqrt (+ (* (pow (neg (sqrt (sin kx))) 2) (pow (neg (sqrt (sin kx))) 2)) (* (sin ky) (sin ky))))) (sin kx) (/ (sin th) (pow (sin ky) 2)) (pow (sin ky) 2) (sqrt (sin kx)))
4.0ms
ky
@inf
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* -1/2 (* kx kx)) (* kx kx) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (neg (sqrt (sin kx))) 2) (* (/ (sin ky) (sqrt (+ (* (pow (neg (sqrt (sin kx))) 2) (pow (neg (sqrt (sin kx))) 2)) (* (sin ky) (sin ky))))) (sin th)) (/ (sin ky) (sqrt (+ (* (pow (neg (sqrt (sin kx))) 2) (pow (neg (sqrt (sin kx))) 2)) (* (sin ky) (sin ky))))) (sin kx) (/ (sin th) (pow (sin ky) 2)) (pow (sin ky) 2) (sqrt (sin kx)))
4.0ms
ky
@-inf
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* -1/2 (* kx kx)) (* kx kx) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (neg (sqrt (sin kx))) 2) (* (/ (sin ky) (sqrt (+ (* (pow (neg (sqrt (sin kx))) 2) (pow (neg (sqrt (sin kx))) 2)) (* (sin ky) (sin ky))))) (sin th)) (/ (sin ky) (sqrt (+ (* (pow (neg (sqrt (sin kx))) 2) (pow (neg (sqrt (sin kx))) 2)) (* (sin ky) (sin ky))))) (sin kx) (/ (sin th) (pow (sin ky) 2)) (pow (sin ky) 2) (sqrt (sin kx)))
4.0ms
kx
@inf
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* -1/2 (* kx kx)) (* kx kx) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (neg (sqrt (sin kx))) 2) (* (/ (sin ky) (sqrt (+ (* (pow (neg (sqrt (sin kx))) 2) (pow (neg (sqrt (sin kx))) 2)) (* (sin ky) (sin ky))))) (sin th)) (/ (sin ky) (sqrt (+ (* (pow (neg (sqrt (sin kx))) 2) (pow (neg (sqrt (sin kx))) 2)) (* (sin ky) (sin ky))))) (sin kx) (/ (sin th) (pow (sin ky) 2)) (pow (sin ky) 2) (sqrt (sin kx)))
4.0ms
th
@inf
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* -1/2 (* kx kx)) (* kx kx) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (neg (sqrt (sin kx))) 2) (* (/ (sin ky) (sqrt (+ (* (pow (neg (sqrt (sin kx))) 2) (pow (neg (sqrt (sin kx))) 2)) (* (sin ky) (sin ky))))) (sin th)) (/ (sin ky) (sqrt (+ (* (pow (neg (sqrt (sin kx))) 2) (pow (neg (sqrt (sin kx))) 2)) (* (sin ky) (sin ky))))) (sin kx) (/ (sin th) (pow (sin ky) 2)) (pow (sin ky) 2) (sqrt (sin kx)))

simplify199.0ms (1.8%)

Memory
-18.2MiB live, 220.1MiB allocated; 30ms collecting garbage
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05282568
119172410
085392273
Stop Event
iter limit
node limit
Counts
87 → 84
Calls
Call 1
Inputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(* -1/2 (pow kx 2))
(pow kx 2)
(/ (sin th) (sin ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(sqrt kx)
(+ (sqrt kx) (* -1/12 (sqrt (pow kx 5))))
(+ (sqrt kx) (* (pow kx 3) (+ (* -1/12 (sqrt (/ 1 kx))) (* 1/240 (sqrt (pow kx 3))))))
(+ (sqrt kx) (* (pow kx 3) (+ (* -1/12 (sqrt (/ 1 kx))) (* (pow kx 2) (+ (* -1/288 (sqrt (/ 1 kx))) (* 1/240 (sqrt (/ 1 kx))))))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2)))
(* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (/ (sin th) (pow kx 2))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sin kx)
(sqrt (sin kx))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(* -1/2 (/ (* (pow kx 2) (sin th)) (pow ky 2)))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (* -1/6 (* (pow kx 2) (sin th)))))) (pow ky 2))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (+ (* -1/6 (* (pow kx 2) (sin th))) (* 1/2 (* (pow ky 2) (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th)))))))))) (pow ky 2))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (+ (* -1/6 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (* (pow kx 2) (sin th))) (+ (* 2/135 (* (pow kx 2) (sin th))) (* 1/3 (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th))))))))) (* 1/2 (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th))))))))))) (pow ky 2))
(/ (sin th) (sin kx))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(/ (sin th) (pow ky 2))
(/ (+ (sin th) (* 1/3 (* (pow ky 2) (sin th)))) (pow ky 2))
(/ (+ (sin th) (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/9 (sin th)) (* 2/45 (sin th))))) (* -1/3 (sin th))))) (pow ky 2))
(/ (+ (sin th) (* (pow ky 2) (- (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/315 (sin th)) (+ (* 2/135 (sin th)) (* 1/3 (+ (* -1/9 (sin th)) (* 2/45 (sin th)))))))) (+ (* -1/9 (sin th)) (* 2/45 (sin th))))) (* -1/3 (sin th))))) (pow ky 2))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(/ (sin th) (pow (sin ky) 2))
(pow (sin ky) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
th
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(* th (+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2)))))
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) 1/6)))))
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (+ (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (+ 1/120 (* -1/240 (/ (pow kx 2) (pow (sin ky) 2)))))) 1/6)))))
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (+ (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (+ 1/120 (+ (* -1/240 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (* 1/10080 (/ (pow kx 2) (pow (sin ky) 2))) 1/5040)))))) 1/6)))))
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(/ th (pow (sin ky) 2))
(* th (+ (* -1/6 (/ (pow th 2) (pow (sin ky) 2))) (/ 1 (pow (sin ky) 2))))
(* th (+ (* (pow th 2) (- (* 1/120 (/ (pow th 2) (pow (sin ky) 2))) (* 1/6 (/ 1 (pow (sin ky) 2))))) (/ 1 (pow (sin ky) 2))))
(* th (+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/5040 (/ (pow th 2) (pow (sin ky) 2))) (* 1/120 (/ 1 (pow (sin ky) 2))))) (* 1/6 (/ 1 (pow (sin ky) 2))))) (/ 1 (pow (sin ky) 2))))
Outputs
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 kx kx) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) (sin.f64 th))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (/.f64 (fma.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (*.f64 kx kx) #s(literal 1/2 binary64)) (sin.f64 ky)) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (-.f64 #s(literal 2/45 binary64) (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 ky)) (*.f64 kx kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 ky))) (*.f64 kx kx) (sin.f64 ky))
(* -1/2 (pow kx 2))
(*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))
(pow kx 2)
(*.f64 kx kx)
(/ (sin th) (sin ky))
(/.f64 (sin.f64 th) (sin.f64 ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(fma.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (sin.f64 ky)) (*.f64 kx kx)))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (sin.f64 ky)) (*.f64 kx kx)) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (sin.f64 ky)))) (*.f64 kx kx) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 kx kx)) #s(literal 1/6 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) kx)
(sqrt kx)
(sqrt.f64 kx)
(+ (sqrt kx) (* -1/12 (sqrt (pow kx 5))))
(fma.f64 (sqrt.f64 (pow.f64 kx #s(literal 5 binary64))) #s(literal -1/12 binary64) (sqrt.f64 kx))
(+ (sqrt kx) (* (pow kx 3) (+ (* -1/12 (sqrt (/ 1 kx))) (* 1/240 (sqrt (pow kx 3))))))
(fma.f64 (fma.f64 (sqrt.f64 (pow.f64 kx #s(literal 3 binary64))) #s(literal 1/240 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) kx)) #s(literal -1/12 binary64))) (pow.f64 kx #s(literal 3 binary64)) (sqrt.f64 kx))
(+ (sqrt kx) (* (pow kx 3) (+ (* -1/12 (sqrt (/ 1 kx))) (* (pow kx 2) (+ (* -1/288 (sqrt (/ 1 kx))) (* 1/240 (sqrt (/ 1 kx))))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) (sqrt.f64 (/.f64 #s(literal 1 binary64) kx))) #s(literal 1/1440 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) kx)) #s(literal -1/12 binary64))) (pow.f64 kx #s(literal 3 binary64)) (sqrt.f64 kx))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2)))
(*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (/ (sin th) (pow kx 2))))
(*.f64 (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (/.f64 (/.f64 (sin.f64 th) kx) kx)) (*.f64 kx kx))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(sin kx)
(sin.f64 kx)
(sqrt (sin kx))
(sqrt.f64 (sin.f64 kx))
(/ (* ky (sin th)) (sin kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/12 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 (sin.f64 th) #s(literal 1/120 binary64)) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (sin.f64 th)) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (fma.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (sin.f64 th)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (fma.f64 #s(literal -1/240 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/5040 binary64)) (sin.f64 kx))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 (sin.f64 th) #s(literal 1/12 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(/ ky (sin kx))
(/.f64 ky (sin.f64 kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(*.f64 (fma.f64 (neg.f64 (-.f64 (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky)) (-.f64 (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (+.f64 (fma.f64 (-.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (*.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))))) (-.f64 (/.f64 #s(literal 1/5040 binary64) (sin.f64 kx)) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky)) (-.f64 (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 ky (sin.f64 kx)))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (/.f64 (fma.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (-.f64 #s(literal 2/45 binary64) (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) (*.f64 ky ky) (sin.f64 kx))
(* -1/2 (/ (* (pow kx 2) (sin th)) (pow ky 2)))
(*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (* -1/6 (* (pow kx 2) (sin th)))))) (pow ky 2))
(/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (*.f64 kx kx) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (*.f64 ky ky))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (+ (* -1/6 (* (pow kx 2) (sin th))) (* 1/2 (* (pow ky 2) (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th)))))))))) (pow ky 2))
(/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (sin.f64 th) kx) kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (*.f64 kx kx))) (*.f64 ky ky))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (+ (* -1/6 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (* (pow kx 2) (sin th))) (+ (* 2/135 (* (pow kx 2) (sin th))) (* 1/3 (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th))))))))) (* 1/2 (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th))))))))))) (pow ky 2))
(/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (*.f64 kx kx) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (fma.f64 (*.f64 (*.f64 (sin.f64 th) kx) kx) #s(literal 11/945 binary64) (*.f64 (*.f64 (*.f64 (sin.f64 th) kx) kx) #s(literal -1/45 binary64))) (*.f64 (*.f64 (*.f64 (sin.f64 th) kx) kx) #s(literal -1/30 binary64))) (*.f64 ky ky) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th))) (*.f64 ky ky))) (*.f64 ky ky))
(/ (sin th) (sin kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (sin.f64 kx)) (*.f64 ky ky)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 th)) (sin.f64 kx)) (*.f64 ky ky)) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/ (sin th) (pow ky 2))
(/.f64 (/.f64 (sin.f64 th) ky) ky)
(/ (+ (sin th) (* 1/3 (* (pow ky 2) (sin th)))) (pow ky 2))
(/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))
(/ (+ (sin th) (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/9 (sin th)) (* 2/45 (sin th))))) (* -1/3 (sin th))))) (pow ky 2))
(/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (neg.f64 ky) ky) (sin.f64 th)) #s(literal -1/15 binary64) (*.f64 #s(literal 1/3 binary64) (sin.f64 th))) (*.f64 ky ky) (sin.f64 th)) (*.f64 ky ky))
(/ (+ (sin th) (* (pow ky 2) (- (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/315 (sin th)) (+ (* 2/135 (sin th)) (* 1/3 (+ (* -1/9 (sin th)) (* 2/45 (sin th)))))))) (+ (* -1/9 (sin th)) (* 2/45 (sin th))))) (* -1/3 (sin th))))) (pow ky 2))
(/.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 (fma.f64 (sin.f64 th) #s(literal 11/945 binary64) (*.f64 (sin.f64 th) #s(literal -1/45 binary64)))) (*.f64 ky ky)) (*.f64 (sin.f64 th) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (sin.f64 th))) (*.f64 ky ky) (sin.f64 th)) (*.f64 ky ky))
(pow ky 2)
(*.f64 ky ky)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky))
(/ (sin th) (pow (sin ky) 2))
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 ky) th) th) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 (sin.f64 ky) th) th) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 ky) th) th) (sin.f64 ky)) (*.f64 (*.f64 (*.f64 th th) (*.f64 th th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 ky) (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 (sin.f64 ky) th) th)))))) th)
th
(* th (+ 1 (* -1/6 (pow th 2))))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(fma.f64 (*.f64 th (*.f64 th th)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) th) th) #s(literal 1/6 binary64)) th)
(* th (+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2)))))
(fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) 1/6)))))
(fma.f64 (fma.f64 (-.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal 1/12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/6 binary64)) (*.f64 th th) (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) th th)
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (+ (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (+ 1/120 (* -1/240 (/ (pow kx 2) (pow (sin ky) 2)))))) 1/6)))))
(fma.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/240 binary64) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (*.f64 th th) (-.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal 1/12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/6 binary64))) (*.f64 th th) (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) th th)
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (+ (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (+ 1/120 (+ (* -1/240 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (* 1/10080 (/ (pow kx 2) (pow (sin ky) 2))) 1/5040)))))) 1/6)))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (-.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal 1/10080 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/5040 binary64)) (*.f64 th th) (fma.f64 #s(literal -1/240 binary64) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/120 binary64))) (*.f64 th th) (-.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal 1/12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/6 binary64))) (*.f64 th th) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) th)
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 th th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (*.f64 (*.f64 th th) (*.f64 th th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) th)
(/ th (pow (sin ky) 2))
(/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(* th (+ (* -1/6 (/ (pow th 2) (pow (sin ky) 2))) (/ 1 (pow (sin ky) 2))))
(*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)
(* th (+ (* (pow th 2) (- (* 1/120 (/ (pow th 2) (pow (sin ky) 2))) (* 1/6 (/ 1 (pow (sin ky) 2))))) (/ 1 (pow (sin ky) 2))))
(fma.f64 (*.f64 th (*.f64 th th)) (fma.f64 (*.f64 (/.f64 #s(literal 1/120 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th) th (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(* th (+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/5040 (/ (pow th 2) (pow (sin ky) 2))) (* 1/120 (/ 1 (pow (sin ky) 2))))) (* 1/6 (/ 1 (pow (sin ky) 2))))) (/ 1 (pow (sin ky) 2))))
(fma.f64 (*.f64 th (*.f64 th th)) (fma.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 th th) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))

rewrite152.0ms (1.4%)

Memory
8.6MiB live, 197.3MiB allocated; 19ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
035170
061148
1208148
21491148
08289148
Stop Event
iter limit
node limit
iter limit
Counts
19 → 347
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 ky)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
(*.f64 #s(literal -1/2 binary64) (*.f64 kx kx))
(*.f64 kx kx)
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky)))
(sin.f64 kx)
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sqrt.f64 (sin.f64 kx))
Outputs
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
(*.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 (sin.f64 ky))))
(*.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) (fabs.f64 (sqrt.f64 (sin.f64 ky))))
(*.f64 (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(*.f64 (sqrt.f64 (neg.f64 (sin.f64 ky))) (sqrt.f64 (neg.f64 (sin.f64 ky))))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (sin.f64 ky)))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (sqrt.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (sqrt.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) (sqrt.f64 #s(literal -2 binary64)))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))
(sin.f64 ky)
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fabs.f64 (neg.f64 (neg.f64 (sin.f64 ky))))
(fabs.f64 (neg.f64 (sin.f64 ky)))
(fabs.f64 (sin.f64 ky))
(exp.f64 (/.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 2 binary64)))
(exp.f64 (log.f64 (sin.f64 ky)))
(+.f64 (cosh.f64 (log.f64 (sin.f64 ky))) (sinh.f64 (log.f64 (sin.f64 ky))))
(*.f64 (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (sqrt.f64 (+.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))) (sqrt.f64 (-.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))))
(*.f64 (sqrt.f64 (+.f64 (sin.f64 ky) (sin.f64 kx))) (sqrt.f64 (-.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal 1/4 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (sin.f64 kx))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (sin.f64 kx))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (sin.f64 ky))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (sin.f64 kx) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 th) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64)))) (neg.f64 (-.f64 (sin.f64 th) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (sin.f64 th) #s(literal 2 binary64))))) (neg.f64 (neg.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (sin.f64 th)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) #s(literal 3 binary64)) #s(literal -1/8 binary64) (pow.f64 (sin.f64 th) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)))) (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (-.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (sin.f64 th))) (*.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (sin.f64 th)) (pow.f64 (sin.f64 th) #s(literal 2 binary64)))) (*.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (sin.f64 th)) (-.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (sin.f64 th))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 3 binary64)) (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)))) (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64))) (*.f64 (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)))) (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64))) (pow.f64 (sin.f64 th) #s(literal 3 binary64)))) (*.f64 (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)))) (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64))) (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)))) (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 th) #s(literal 2 binary64)) (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64))) (-.f64 (sin.f64 th) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (sin.f64 th) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (sin.f64 th))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) #s(literal 3 binary64)) #s(literal -1/8 binary64) (pow.f64 (sin.f64 th) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (sin.f64 th) (sin.f64 th) (-.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (sin.f64 th))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) #s(literal 3 binary64)) #s(literal -1/8 binary64) (pow.f64 (sin.f64 th) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)))) (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (sin.f64 th) #s(literal 2 binary64))) (-.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (sin.f64 th)))
(/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) #s(literal 3 binary64)) #s(literal -1/8 binary64) (pow.f64 (sin.f64 th) #s(literal 3 binary64))) (fma.f64 (sin.f64 th) (sin.f64 th) (-.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (*.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (sin.f64 th)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) #s(literal 3 binary64)) #s(literal -1/8 binary64) (pow.f64 (sin.f64 th) #s(literal 3 binary64))) (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)))) (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64))))
(fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th))
(fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th))
(fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) (*.f64 kx kx) (sin.f64 th))
(fma.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (neg.f64 (sin.f64 ky))) (/.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(fma.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (sin.f64 ky)) (/.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 th))
(fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) #s(literal -1/2 binary64) (sin.f64 th))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th))
(fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (sin.f64 th))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
(fma.f64 (*.f64 kx kx) (*.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (sin.f64 th))
(-.f64 (/.f64 (pow.f64 (sin.f64 th) #s(literal 2 binary64)) (-.f64 (sin.f64 th) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))))) (/.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (-.f64 (sin.f64 th) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))))))
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64)) (-.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (sin.f64 th))) (/.f64 (pow.f64 (sin.f64 th) #s(literal 2 binary64)) (-.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (sin.f64 th))))
(-.f64 (sin.f64 th) (*.f64 (neg.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))))
(-.f64 (sin.f64 th) (*.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(-.f64 (sin.f64 th) (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx))))
(+.f64 (/.f64 (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 3 binary64)) (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)))) (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 th) #s(literal 3 binary64)) (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)))) (pow.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) #s(literal 2 binary64)))))
(+.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (sin.f64 th))
(+.f64 (sin.f64 th) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (sin.f64 th)))
(*.f64 (*.f64 #s(literal -1/2 binary64) (neg.f64 kx)) (neg.f64 kx))
(*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)
(*.f64 (neg.f64 kx) (*.f64 (neg.f64 kx) #s(literal -1/2 binary64)))
(*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))
(*.f64 #s(literal -1/2 binary64) (*.f64 kx kx))
(*.f64 kx (*.f64 #s(literal -1/2 binary64) kx))
(*.f64 (neg.f64 (neg.f64 (neg.f64 kx))) (neg.f64 (neg.f64 (neg.f64 kx))))
(*.f64 (exp.f64 (log.f64 kx)) (exp.f64 (log.f64 kx)))
(*.f64 (neg.f64 (neg.f64 kx)) (neg.f64 (neg.f64 kx)))
(*.f64 (neg.f64 kx) (neg.f64 kx))
(*.f64 kx kx)
(pow.f64 (exp.f64 (log.f64 kx)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 kx)) #s(literal 2 binary64))
(pow.f64 (neg.f64 kx) #s(literal 2 binary64))
(pow.f64 (*.f64 kx kx) #s(literal 1 binary64))
(pow.f64 kx #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 kx) kx))
(neg.f64 (*.f64 kx (neg.f64 kx)))
(sqrt.f64 (*.f64 (*.f64 kx kx) (*.f64 kx kx)))
(fabs.f64 (neg.f64 (*.f64 kx kx)))
(fabs.f64 (*.f64 (neg.f64 kx) kx))
(fabs.f64 (*.f64 kx (neg.f64 kx)))
(fabs.f64 (*.f64 kx kx))
(exp.f64 (*.f64 (log.f64 (neg.f64 kx)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 kx) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 kx) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 kx) #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 th)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 3 binary64))) (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) (sqrt.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 3 binary64))))
(*.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (sin.f64 kx)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx))))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (sqrt.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (sqrt.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal -2 binary64)))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (sin.f64 kx))
(fma.f64 (sin.f64 kx) (cos.f64 (PI.f64)) (*.f64 (cos.f64 kx) (sin.f64 (PI.f64))))
(sin.f64 (neg.f64 (+.f64 kx (PI.f64))))
(sin.f64 (+.f64 (+.f64 kx (PI.f64)) (PI.f64)))
(sin.f64 (+.f64 (neg.f64 kx) (PI.f64)))
(sin.f64 (+.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (neg.f64 (neg.f64 kx)))
(sin.f64 (+.f64 kx (PI.f64)))
(sin.f64 (neg.f64 kx))
(sin.f64 kx)
(sqrt.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(-.f64 (*.f64 (cos.f64 kx) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (sin.f64 kx) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(fabs.f64 (sin.f64 kx))
(cos.f64 (neg.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (+.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (PI.f64)))
(cos.f64 (+.f64 (+.f64 kx (PI.f64)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (+.f64 (neg.f64 kx) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))
(exp.f64 (fma.f64 (log.f64 (sin.f64 kx)) #s(literal 1/2 binary64) (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1/2 binary64))))
(exp.f64 (fma.f64 (log.f64 (sin.f64 kx)) #s(literal 1/2 binary64) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (sin.f64 kx))) (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))
(exp.f64 (/.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 2 binary64)))
(exp.f64 (log.f64 (sin.f64 kx)))
(+.f64 (*.f64 (sin.f64 kx) (cos.f64 (PI.f64))) (*.f64 (cos.f64 kx) (sin.f64 (PI.f64))))
(+.f64 (cosh.f64 (log.f64 (sin.f64 kx))) (sinh.f64 (log.f64 (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
(*.f64 (sqrt.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 3 binary64))) (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) (sqrt.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 3 binary64))))
(*.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (sin.f64 kx)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx))))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (sqrt.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (sqrt.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal -2 binary64)))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (sin.f64 kx))
(fma.f64 (sin.f64 kx) (cos.f64 (PI.f64)) (*.f64 (cos.f64 kx) (sin.f64 (PI.f64))))
(sin.f64 (neg.f64 (+.f64 kx (PI.f64))))
(sin.f64 (+.f64 (+.f64 kx (PI.f64)) (PI.f64)))
(sin.f64 (+.f64 (neg.f64 kx) (PI.f64)))
(sin.f64 (+.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (neg.f64 (neg.f64 kx)))
(sin.f64 (+.f64 kx (PI.f64)))
(sin.f64 (neg.f64 kx))
(sin.f64 kx)
(sqrt.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(-.f64 (*.f64 (cos.f64 kx) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (sin.f64 kx) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(fabs.f64 (sin.f64 kx))
(cos.f64 (neg.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (+.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (PI.f64)))
(cos.f64 (+.f64 (+.f64 kx (PI.f64)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (+.f64 (neg.f64 kx) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))
(exp.f64 (fma.f64 (log.f64 (sin.f64 kx)) #s(literal 1/2 binary64) (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1/2 binary64))))
(exp.f64 (fma.f64 (log.f64 (sin.f64 kx)) #s(literal 1/2 binary64) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(exp.f64 (+.f64 (log.f64 (sqrt.f64 (sin.f64 kx))) (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))
(exp.f64 (/.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 2 binary64)))
(exp.f64 (log.f64 (sin.f64 kx)))
(+.f64 (*.f64 (sin.f64 kx) (cos.f64 (PI.f64))) (*.f64 (cos.f64 kx) (sin.f64 (PI.f64))))
(+.f64 (cosh.f64 (log.f64 (sin.f64 kx))) (sinh.f64 (log.f64 (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64))
(/.f64 (neg.f64 (/.f64 (sin.f64 th) (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (/.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (sin.f64 ky)))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 th)))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (/.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 ky)))
(/.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 ky))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(*.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(*.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 ky))))
(*.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)))
(*.f64 (sin.f64 ky) (sin.f64 ky))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 4 binary64))
(/.f64 (fabs.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (fabs.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (fabs.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (fabs.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 ky) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 ky) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 ky (PI.f64)) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 ky (PI.f64)) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 ky) (neg.f64 ky))) (cos.f64 (+.f64 (neg.f64 ky) (neg.f64 ky)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 ky) (+.f64 ky (PI.f64)))) (cos.f64 (+.f64 (neg.f64 ky) (+.f64 ky (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 ky (PI.f64)) (neg.f64 ky))) (cos.f64 (+.f64 (+.f64 ky (PI.f64)) (neg.f64 ky)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 ky (PI.f64)) (+.f64 ky (PI.f64)))) (cos.f64 (+.f64 (+.f64 ky (PI.f64)) (+.f64 ky (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -2 binary64))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64))
(neg.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))
(-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) (/.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (neg.f64 ky)))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (PI.f64))))))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))
(*.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))
(neg.f64 (sqrt.f64 (sin.f64 kx)))
(sqrt.f64 (sin.f64 kx))
(fabs.f64 (sqrt.f64 (sin.f64 kx)))
(exp.f64 (/.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1/2 binary64)))
(exp.f64 (log.f64 (sqrt.f64 (sin.f64 kx))))
(+.f64 (cosh.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1/2 binary64))))
(+.f64 (cosh.f64 (log.f64 (sqrt.f64 (sin.f64 kx)))) (sinh.f64 (log.f64 (sqrt.f64 (sin.f64 kx)))))

eval91.0ms (0.8%)

Memory
23.1MiB live, 172.6MiB allocated; 13ms collecting garbage
Compiler

Compiled 17 629 to 2 358 computations (86.6% saved)

prune52.0ms (0.5%)

Memory
-33.4MiB live, 114.0MiB allocated; 12ms collecting garbage
Pruning

41 alts after pruning (39 fresh and 2 done)

PrunedKeptTotal
New55631587
Fresh7815
Picked325
Done000
Total56641607
Accuracy
100.0%
Counts
607 → 41
Alt Table
Click to see full alt table
StatusAccuracyProgram
95.6%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
72.1%
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
38.4%
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
99.6%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
46.4%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
78.3%
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 ky))
78.1%
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
77.7%
(*.f64 (/.f64 (sin.f64 th) (+.f64 (cosh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))) (sin.f64 ky))
29.1%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
74.4%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)) (sin.f64 ky))) (sin.f64 th))
35.1%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))) (sin.f64 th))
59.6%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 #s(approx (sqrt (sin kx)) (sqrt.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))) (sin.f64 th))
55.2%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
47.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
78.3%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
78.0%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
41.1%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
52.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
32.0%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
55.1%
(*.f64 (/.f64 #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
72.1%
(*.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sin.f64 th))
32.0%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
50.9%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)) (sin.f64 ky))
22.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
29.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
91.9%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
16.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
22.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
16.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
15.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
22.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
22.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
14.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
18.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
29.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
14.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
4.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
2.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
17.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
17.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
26.6%
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
Compiler

Compiled 2 200 to 1 562 computations (29% saved)

simplify138.0ms (1.2%)

Memory
15.0MiB live, 105.9MiB allocated; 7ms collecting garbage
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64))))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
cost-diff2
(+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
cost-diff0
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
cost-diff0
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx))
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
cost-diff1
(fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th))
cost-diff0
(sin.f64 th)
cost-diff0
(/.f64 (sin.f64 th) (sin.f64 kx))
cost-diff0
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
cost-diff0
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
cost-diff0
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
cost-diff0
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
cost-diff2
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
cost-diff0
(sin.f64 ky)
cost-diff0
(sin.f64 th)
cost-diff0
(*.f64 (sin.f64 th) (sin.f64 ky))
cost-diff0
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
053339
090329
1155329
2348319
3999316
43204316
55872316
08160311
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (sin.f64 ky))
(sin.f64 th)
th
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 th th)
th
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (sin.f64 th) (sin.f64 kx))
(sin.f64 th)
th
(sin.f64 kx)
kx
(sin.f64 ky)
ky
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx))
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(sin.f64 th)
th
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 ky)
ky
#s(literal 2 binary64)
(*.f64 #s(literal -1/2 binary64) kx)
#s(literal -1/2 binary64)
kx
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64))))
(sin.f64 ky)
ky
(/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))
#s(literal 1 binary64)
(cos.f64 (*.f64 #s(literal 2 binary64) ky))
(*.f64 #s(literal 2 binary64) ky)
#s(literal 2 binary64)
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))
(cos.f64 (*.f64 #s(literal 2 binary64) kx))
(*.f64 #s(literal 2 binary64) kx)
kx
(sqrt.f64 #s(literal 2 binary64))
(sin.f64 th)
th
Outputs
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sin.f64 th))
(sin.f64 th)
th
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64))
(*.f64 th th)
th
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (sin.f64 th) (sin.f64 kx))
(sin.f64 th)
th
(sin.f64 kx)
kx
(sin.f64 ky)
ky
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 th)))
(fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th))
(*.f64 (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64)) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx))
(*.f64 (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx (sin.f64 th)))
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(sin.f64 th)
th
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 ky)
ky
#s(literal 2 binary64)
(*.f64 #s(literal -1/2 binary64) kx)
#s(literal -1/2 binary64)
kx
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sin.f64 th)) (sqrt.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(sin.f64 ky)
ky
(/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (sqrt.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(sqrt.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
#s(literal 1 binary64)
(cos.f64 (*.f64 #s(literal 2 binary64) ky))
(cos.f64 (*.f64 #s(literal -2 binary64) ky))
(*.f64 #s(literal 2 binary64) ky)
#s(literal 2 binary64)
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(cos.f64 (*.f64 #s(literal 2 binary64) kx))
(cos.f64 (*.f64 #s(literal -2 binary64) kx))
(*.f64 #s(literal 2 binary64) kx)
kx
(sqrt.f64 #s(literal 2 binary64))
(sin.f64 th)
th

localize340.0ms (3%)

Memory
14.1MiB live, 539.8MiB allocated; 54ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.4576950195368841
(/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))
accuracy4.539290654018221
(sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
accuracy12.790016021622453
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))
accuracy15.093746851177045
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))
accuracy1.714239827872504
(fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th))
accuracy2.9929552816577494
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx))
accuracy4.149611912200499
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
accuracy47.856728049166364
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
accuracy0.0
(sin.f64 kx)
accuracy0.217128759768442
(/.f64 (sin.f64 th) (sin.f64 kx))
accuracy0.31478500976844204
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
accuracy45.47919672591884
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
accuracy0.0390625
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
accuracy0.0546875
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
accuracy28.611572264620182
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
accuracy45.36492942332041
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
accuracy0.0
(sin.f64 kx)
accuracy0.046875
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.16015625
(*.f64 (sin.f64 th) (sin.f64 ky))
accuracy2.8491840257888934
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Samples
196.0ms117×2valid
61.0ms72×1valid
43.0ms67×0valid
Compiler

Compiled 323 to 45 computations (86.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 255.0ms
ival-sin: 57.0ms (22.3% of total)
ival-mult: 45.0ms (17.6% of total)
ival-cos: 41.0ms (16.1% of total)
adjust: 33.0ms (12.9% of total)
ival-div: 18.0ms (7.1% of total)
ival-hypot: 16.0ms (6.3% of total)
ival-add: 12.0ms (4.7% of total)
ival-pow2: 11.0ms (4.3% of total)
ival-sqrt: 9.0ms (3.5% of total)
ival-sub: 6.0ms (2.4% of total)
const: 6.0ms (2.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series89.0ms (0.8%)

Memory
20.2MiB live, 163.1MiB allocated; 13ms collecting garbage
Counts
24 → 156
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (sin.f64 ky))
(sin.f64 th)
(sin.f64 ky)
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (sin.f64 th) (sin.f64 kx))
(fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx))
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64))))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))
(sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))
Outputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(/ (sin th) (sin ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(/ (sin th) kx)
(/ (+ (sin th) (* 1/6 (* (pow kx 2) (sin th)))) kx)
(/ (+ (sin th) (* (pow kx 2) (- (* -1 (* (pow kx 2) (+ (* -1/36 (sin th)) (* 1/120 (sin th))))) (* -1/6 (sin th))))) kx)
(/ (+ (sin th) (* (pow kx 2) (- (* (pow kx 2) (- (* -1 (* (pow kx 2) (+ (* -1/5040 (sin th)) (+ (* 1/720 (sin th)) (* 1/6 (+ (* -1/36 (sin th)) (* 1/120 (sin th)))))))) (+ (* -1/36 (sin th)) (* 1/120 (sin th))))) (* -1/6 (sin th))))) kx)
(* -1/2 (/ (* kx (sin th)) (pow (sin ky) 2)))
(- 1 (cos (* 2 ky)))
(- (+ 1 (* 2 (pow kx 2))) (cos (* 2 ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* -2/3 (pow kx 2))))) (cos (* 2 ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* (pow kx 2) (- (* 4/45 (pow kx 2)) 2/3))))) (cos (* 2 ky)))
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(+ (* -1 (* (* (pow kx 2) (* (sin ky) (* (sin th) (sqrt 2)))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky)))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(+ (* -1 (* (* (pow kx 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin ky) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(* 2 (pow kx 2))
(* (pow kx 2) (+ 2 (* -2/3 (pow kx 2))))
(* (pow kx 2) (+ 2 (* (pow kx 2) (- (* 4/45 (pow kx 2)) 2/3))))
(* (pow kx 2) (+ 2 (* (pow kx 2) (- (* (pow kx 2) (+ 4/45 (* -2/315 (pow kx 2)))) 2/3))))
(sqrt (- 1 (cos (* 2 ky))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* -1/2 (* (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky)))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (/ (pow kx 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (/ (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (/ (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(/ (sin th) (sin kx))
(* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2)))
(* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (/ (sin th) (pow kx 2))))
(- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(sin kx)
(- 1 (cos (* 2 kx)))
(sqrt (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))
(* (/ 1 (sqrt 2)) (sqrt (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(* ky (sin th))
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(* -1/2 (/ (* (pow kx 2) (sin th)) (pow ky 2)))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (* -1/6 (* (pow kx 2) (sin th)))))) (pow ky 2))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (+ (* -1/6 (* (pow kx 2) (sin th))) (* 1/2 (* (pow ky 2) (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th)))))))))) (pow ky 2))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (+ (* -1/6 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (* (pow kx 2) (sin th))) (+ (* 2/135 (* (pow kx 2) (sin th))) (* 1/3 (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th))))))))) (* 1/2 (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th))))))))))) (pow ky 2))
(* -1/2 (/ (* kx (sin th)) (pow ky 2)))
(/ (+ (* -1/2 (* kx (sin th))) (* -1/6 (* kx (* (pow ky 2) (sin th))))) (pow ky 2))
(/ (+ (* -1/2 (* kx (sin th))) (* (pow ky 2) (+ (* -1/6 (* kx (sin th))) (* 1/2 (* (pow ky 2) (+ (* -1/9 (* kx (sin th))) (* 2/45 (* kx (sin th))))))))) (pow ky 2))
(/ (+ (* -1/2 (* kx (sin th))) (* (pow ky 2) (+ (* -1/6 (* kx (sin th))) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (* kx (sin th))) (+ (* 2/135 (* kx (sin th))) (* 1/3 (+ (* -1/9 (* kx (sin th))) (* 2/45 (* kx (sin th))))))))) (* 1/2 (+ (* -1/9 (* kx (sin th))) (* 2/45 (* kx (sin th)))))))))) (pow ky 2))
(/ (sin th) (pow ky 2))
(/ (+ (sin th) (* 1/3 (* (pow ky 2) (sin th)))) (pow ky 2))
(/ (+ (sin th) (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/9 (sin th)) (* 2/45 (sin th))))) (* -1/3 (sin th))))) (pow ky 2))
(/ (+ (sin th) (* (pow ky 2) (- (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/315 (sin th)) (+ (* 2/135 (sin th)) (* 1/3 (+ (* -1/9 (sin th)) (* 2/45 (sin th)))))))) (+ (* -1/9 (sin th)) (* 2/45 (sin th))))) (* -1/3 (sin th))))) (pow ky 2))
(- (+ 1 (* 2 (pow ky 2))) (cos (* 2 kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* -2/3 (pow ky 2))))) (cos (* 2 kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3))))) (cos (* 2 kx)))
(* (* ky (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx))))))))))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (- 1 (cos (* 2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (- 1 (cos (* 2 kx)))))))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/12 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/5040 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))))))))))
(* (* ky (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))))
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* 1/2 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx))))))))))))))
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* 1/2 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (- 1 (cos (* 2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (- 1 (cos (* 2 kx))))))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/12 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/120 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/5040 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))))))))))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(* 2 (pow ky 2))
(* (pow ky 2) (+ 2 (* -2/3 (pow ky 2))))
(* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3))))
(* (pow ky 2) (+ 2 (* (pow ky 2) (- (* (pow ky 2) (+ 4/45 (* -2/315 (pow ky 2)))) 2/3))))
(sqrt (- 1 (cos (* 2 kx))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 kx))))) (* -1/2 (* (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 kx)))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* 1/2 (* (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (- 1 (cos (* 2 kx))))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx)))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (/ (pow ky 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (/ (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 kx)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* 1/2 (* (/ (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (- 1 (cos (* 2 kx))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))
(* (sin ky) (sin th))
(/ (sin th) (pow (sin ky) 2))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (sin ky))
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
th
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
1
(+ 1 (* -1/6 (pow th 2)))
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(/ th (sin kx))
(* th (+ (* -1/6 (/ (pow th 2) (sin kx))) (/ 1 (sin kx))))
(* th (+ (* (pow th 2) (- (* 1/120 (/ (pow th 2) (sin kx))) (* 1/6 (/ 1 (sin kx))))) (/ 1 (sin kx))))
(* th (+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/5040 (/ (pow th 2) (sin kx))) (* 1/120 (/ 1 (sin kx))))) (* 1/6 (/ 1 (sin kx))))) (/ 1 (sin kx))))
(* th (+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2)))))
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) 1/6)))))
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (+ (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (+ 1/120 (* -1/240 (/ (pow kx 2) (pow (sin ky) 2)))))) 1/6)))))
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (+ (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (+ 1/120 (+ (* -1/240 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (* 1/10080 (/ (pow kx 2) (pow (sin ky) 2))) 1/5040)))))) 1/6)))))
(* -1/2 (/ (* kx th) (pow (sin ky) 2)))
(* th (+ (* -1/2 (/ kx (pow (sin ky) 2))) (* 1/12 (/ (* kx (pow th 2)) (pow (sin ky) 2)))))
(* th (+ (* -1/2 (/ kx (pow (sin ky) 2))) (* (pow th 2) (+ (* -1/240 (/ (* kx (pow th 2)) (pow (sin ky) 2))) (* 1/12 (/ kx (pow (sin ky) 2)))))))
(* th (+ (* -1/2 (/ kx (pow (sin ky) 2))) (* (pow th 2) (+ (* 1/12 (/ kx (pow (sin ky) 2))) (* (pow th 2) (+ (* -1/240 (/ kx (pow (sin ky) 2))) (* 1/10080 (/ (* kx (pow th 2)) (pow (sin ky) 2)))))))))
(/ th (pow (sin ky) 2))
(* th (+ (* -1/6 (/ (pow th 2) (pow (sin ky) 2))) (/ 1 (pow (sin ky) 2))))
(* th (+ (* (pow th 2) (- (* 1/120 (/ (pow th 2) (pow (sin ky) 2))) (* 1/6 (/ 1 (pow (sin ky) 2))))) (/ 1 (pow (sin ky) 2))))
(* th (+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/5040 (/ (pow th 2) (pow (sin ky) 2))) (* 1/120 (/ 1 (pow (sin ky) 2))))) (* 1/6 (/ 1 (pow (sin ky) 2))))) (/ 1 (pow (sin ky) 2))))
(* (* th (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(* th (+ (* -1/6 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))))
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))))))))
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))))))))))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1/6 (pow th 2))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Calls

9 calls:

TimeVariablePointExpression
17.0ms
kx
@0
((/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (sin th) (sin ky) (* (+ (* (* th th) -1/6) 1) th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (* th th) -1/6) 1) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/ (sin th) (sin kx)) (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (/ (sin th) (pow (sin ky) 2)) (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin kx) (- 1 (cos (* 2 kx))) (- 1 (cos (* 2 ky))) (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2)))
13.0ms
ky
@-inf
((/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (sin th) (sin ky) (* (+ (* (* th th) -1/6) 1) th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (* th th) -1/6) 1) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/ (sin th) (sin kx)) (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (/ (sin th) (pow (sin ky) 2)) (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin kx) (- 1 (cos (* 2 kx))) (- 1 (cos (* 2 ky))) (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2)))
10.0ms
kx
@-inf
((/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (sin th) (sin ky) (* (+ (* (* th th) -1/6) 1) th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (* th th) -1/6) 1) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/ (sin th) (sin kx)) (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (/ (sin th) (pow (sin ky) 2)) (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin kx) (- 1 (cos (* 2 kx))) (- 1 (cos (* 2 ky))) (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2)))
9.0ms
ky
@0
((/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (sin th) (sin ky) (* (+ (* (* th th) -1/6) 1) th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (* th th) -1/6) 1) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/ (sin th) (sin kx)) (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (/ (sin th) (pow (sin ky) 2)) (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin kx) (- 1 (cos (* 2 kx))) (- 1 (cos (* 2 ky))) (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2)))
7.0ms
ky
@inf
((/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (sin th) (sin ky) (* (+ (* (* th th) -1/6) 1) th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (* th th) -1/6) 1) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/ (sin th) (sin kx)) (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (/ (sin th) (pow (sin ky) 2)) (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin kx) (- 1 (cos (* 2 kx))) (- 1 (cos (* 2 ky))) (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2)))

simplify234.0ms (2.1%)

Memory
-0.2MiB live, 335.2MiB allocated; 43ms collecting garbage
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09385787
135505419
085985175
Stop Event
iter limit
node limit
Counts
156 → 153
Calls
Call 1
Inputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(/ (sin th) (sin ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(/ (sin th) kx)
(/ (+ (sin th) (* 1/6 (* (pow kx 2) (sin th)))) kx)
(/ (+ (sin th) (* (pow kx 2) (- (* -1 (* (pow kx 2) (+ (* -1/36 (sin th)) (* 1/120 (sin th))))) (* -1/6 (sin th))))) kx)
(/ (+ (sin th) (* (pow kx 2) (- (* (pow kx 2) (- (* -1 (* (pow kx 2) (+ (* -1/5040 (sin th)) (+ (* 1/720 (sin th)) (* 1/6 (+ (* -1/36 (sin th)) (* 1/120 (sin th)))))))) (+ (* -1/36 (sin th)) (* 1/120 (sin th))))) (* -1/6 (sin th))))) kx)
(* -1/2 (/ (* kx (sin th)) (pow (sin ky) 2)))
(- 1 (cos (* 2 ky)))
(- (+ 1 (* 2 (pow kx 2))) (cos (* 2 ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* -2/3 (pow kx 2))))) (cos (* 2 ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* (pow kx 2) (- (* 4/45 (pow kx 2)) 2/3))))) (cos (* 2 ky)))
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(+ (* -1 (* (* (pow kx 2) (* (sin ky) (* (sin th) (sqrt 2)))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky)))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(+ (* -1 (* (* (pow kx 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin ky) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(* 2 (pow kx 2))
(* (pow kx 2) (+ 2 (* -2/3 (pow kx 2))))
(* (pow kx 2) (+ 2 (* (pow kx 2) (- (* 4/45 (pow kx 2)) 2/3))))
(* (pow kx 2) (+ 2 (* (pow kx 2) (- (* (pow kx 2) (+ 4/45 (* -2/315 (pow kx 2)))) 2/3))))
(sqrt (- 1 (cos (* 2 ky))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* -1/2 (* (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky)))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (/ (pow kx 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (/ (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (/ (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(/ (sin th) (sin kx))
(* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2)))
(* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (/ (sin th) (pow kx 2))))
(- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(sin kx)
(- 1 (cos (* 2 kx)))
(sqrt (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))
(* (/ 1 (sqrt 2)) (sqrt (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(* ky (sin th))
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(* -1/2 (/ (* (pow kx 2) (sin th)) (pow ky 2)))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (* -1/6 (* (pow kx 2) (sin th)))))) (pow ky 2))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (+ (* -1/6 (* (pow kx 2) (sin th))) (* 1/2 (* (pow ky 2) (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th)))))))))) (pow ky 2))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (+ (* -1/6 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (* (pow kx 2) (sin th))) (+ (* 2/135 (* (pow kx 2) (sin th))) (* 1/3 (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th))))))))) (* 1/2 (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th))))))))))) (pow ky 2))
(* -1/2 (/ (* kx (sin th)) (pow ky 2)))
(/ (+ (* -1/2 (* kx (sin th))) (* -1/6 (* kx (* (pow ky 2) (sin th))))) (pow ky 2))
(/ (+ (* -1/2 (* kx (sin th))) (* (pow ky 2) (+ (* -1/6 (* kx (sin th))) (* 1/2 (* (pow ky 2) (+ (* -1/9 (* kx (sin th))) (* 2/45 (* kx (sin th))))))))) (pow ky 2))
(/ (+ (* -1/2 (* kx (sin th))) (* (pow ky 2) (+ (* -1/6 (* kx (sin th))) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (* kx (sin th))) (+ (* 2/135 (* kx (sin th))) (* 1/3 (+ (* -1/9 (* kx (sin th))) (* 2/45 (* kx (sin th))))))))) (* 1/2 (+ (* -1/9 (* kx (sin th))) (* 2/45 (* kx (sin th)))))))))) (pow ky 2))
(/ (sin th) (pow ky 2))
(/ (+ (sin th) (* 1/3 (* (pow ky 2) (sin th)))) (pow ky 2))
(/ (+ (sin th) (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/9 (sin th)) (* 2/45 (sin th))))) (* -1/3 (sin th))))) (pow ky 2))
(/ (+ (sin th) (* (pow ky 2) (- (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/315 (sin th)) (+ (* 2/135 (sin th)) (* 1/3 (+ (* -1/9 (sin th)) (* 2/45 (sin th)))))))) (+ (* -1/9 (sin th)) (* 2/45 (sin th))))) (* -1/3 (sin th))))) (pow ky 2))
(- (+ 1 (* 2 (pow ky 2))) (cos (* 2 kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* -2/3 (pow ky 2))))) (cos (* 2 kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3))))) (cos (* 2 kx)))
(* (* ky (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx))))))))))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (- 1 (cos (* 2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (- 1 (cos (* 2 kx)))))))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/12 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/5040 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))))))))))
(* (* ky (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))))
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* 1/2 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx))))))))))))))
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* 1/2 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (- 1 (cos (* 2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (- 1 (cos (* 2 kx))))))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/12 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/120 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/5040 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))))))))))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(* 2 (pow ky 2))
(* (pow ky 2) (+ 2 (* -2/3 (pow ky 2))))
(* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3))))
(* (pow ky 2) (+ 2 (* (pow ky 2) (- (* (pow ky 2) (+ 4/45 (* -2/315 (pow ky 2)))) 2/3))))
(sqrt (- 1 (cos (* 2 kx))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 kx))))) (* -1/2 (* (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 kx)))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* 1/2 (* (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (- 1 (cos (* 2 kx))))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx)))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (/ (pow ky 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (/ (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 kx)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* 1/2 (* (/ (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (- 1 (cos (* 2 kx))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))
(* (sin ky) (sin th))
(/ (sin th) (pow (sin ky) 2))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (sin ky))
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
th
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
1
(+ 1 (* -1/6 (pow th 2)))
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(/ th (sin kx))
(* th (+ (* -1/6 (/ (pow th 2) (sin kx))) (/ 1 (sin kx))))
(* th (+ (* (pow th 2) (- (* 1/120 (/ (pow th 2) (sin kx))) (* 1/6 (/ 1 (sin kx))))) (/ 1 (sin kx))))
(* th (+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/5040 (/ (pow th 2) (sin kx))) (* 1/120 (/ 1 (sin kx))))) (* 1/6 (/ 1 (sin kx))))) (/ 1 (sin kx))))
(* th (+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2)))))
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) 1/6)))))
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (+ (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (+ 1/120 (* -1/240 (/ (pow kx 2) (pow (sin ky) 2)))))) 1/6)))))
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (+ (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (+ 1/120 (+ (* -1/240 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (* 1/10080 (/ (pow kx 2) (pow (sin ky) 2))) 1/5040)))))) 1/6)))))
(* -1/2 (/ (* kx th) (pow (sin ky) 2)))
(* th (+ (* -1/2 (/ kx (pow (sin ky) 2))) (* 1/12 (/ (* kx (pow th 2)) (pow (sin ky) 2)))))
(* th (+ (* -1/2 (/ kx (pow (sin ky) 2))) (* (pow th 2) (+ (* -1/240 (/ (* kx (pow th 2)) (pow (sin ky) 2))) (* 1/12 (/ kx (pow (sin ky) 2)))))))
(* th (+ (* -1/2 (/ kx (pow (sin ky) 2))) (* (pow th 2) (+ (* 1/12 (/ kx (pow (sin ky) 2))) (* (pow th 2) (+ (* -1/240 (/ kx (pow (sin ky) 2))) (* 1/10080 (/ (* kx (pow th 2)) (pow (sin ky) 2)))))))))
(/ th (pow (sin ky) 2))
(* th (+ (* -1/6 (/ (pow th 2) (pow (sin ky) 2))) (/ 1 (pow (sin ky) 2))))
(* th (+ (* (pow th 2) (- (* 1/120 (/ (pow th 2) (pow (sin ky) 2))) (* 1/6 (/ 1 (pow (sin ky) 2))))) (/ 1 (pow (sin ky) 2))))
(* th (+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/5040 (/ (pow th 2) (pow (sin ky) 2))) (* 1/120 (/ 1 (pow (sin ky) 2))))) (* 1/6 (/ 1 (pow (sin ky) 2))))) (/ 1 (pow (sin ky) 2))))
(* (* th (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(* th (+ (* -1/6 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))))
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))))))))
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))))))))))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1/6 (pow th 2))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Outputs
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 kx kx) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) (sin.f64 th))
(/ (sin th) (sin ky))
(/.f64 (sin.f64 th) (sin.f64 ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(fma.f64 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) #s(literal -1/2 binary64) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 ky)) (*.f64 kx kx)))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (sin.f64 ky)) (*.f64 kx kx)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 ky)))) (*.f64 kx kx) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(/ (sin th) kx)
(/.f64 (sin.f64 th) kx)
(/ (+ (sin th) (* 1/6 (* (pow kx 2) (sin th)))) kx)
(/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx)
(/ (+ (sin th) (* (pow kx 2) (- (* -1 (* (pow kx 2) (+ (* -1/36 (sin th)) (* 1/120 (sin th))))) (* -1/6 (sin th))))) kx)
(/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal -7/360 binary64))) (*.f64 kx kx) (*.f64 #s(literal 1/6 binary64) (sin.f64 th))) (*.f64 kx kx) (sin.f64 th)) kx)
(/ (+ (sin th) (* (pow kx 2) (- (* (pow kx 2) (- (* -1 (* (pow kx 2) (+ (* -1/5040 (sin th)) (+ (* 1/720 (sin th)) (* 1/6 (+ (* -1/36 (sin th)) (* 1/120 (sin th)))))))) (+ (* -1/36 (sin th)) (* 1/120 (sin th))))) (* -1/6 (sin th))))) kx)
(/.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 (fma.f64 (sin.f64 th) #s(literal 1/840 binary64) (*.f64 (*.f64 (sin.f64 th) #s(literal -7/360 binary64)) #s(literal 1/6 binary64)))) (*.f64 kx kx)) (*.f64 (sin.f64 th) #s(literal -7/360 binary64))) (*.f64 kx kx) (*.f64 #s(literal 1/6 binary64) (sin.f64 th))) (*.f64 kx kx) (sin.f64 th)) kx)
(* -1/2 (/ (* kx (sin th)) (pow (sin ky) 2)))
(/.f64 (*.f64 (*.f64 (sin.f64 th) kx) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(- 1 (cos (* 2 ky)))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(- (+ 1 (* 2 (pow kx 2))) (cos (* 2 ky)))
(-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* -2/3 (pow kx 2))))) (cos (* 2 ky)))
(-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* (pow kx 2) (- (* 4/45 (pow kx 2)) 2/3))))) (cos (* 2 ky)))
(-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 #s(literal 4/45 binary64) (*.f64 kx kx)) #s(literal 2/3 binary64)) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))
(+ (* -1 (* (* (pow kx 2) (* (sin ky) (* (sin th) (sqrt 2)))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(fma.f64 (neg.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)) (*.f64 kx kx))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 kx kx) (sin.f64 ky)) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky)))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 kx kx) (sin.f64 ky)) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (fma.f64 (/.f64 (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal -1 binary64) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64) (+.f64 (/.f64 #s(literal 4/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 4/45 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))))) (*.f64 kx kx) (*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))
(+ (* -1 (* (* (pow kx 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(fma.f64 (neg.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (*.f64 kx kx))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 kx kx) (sin.f64 ky)) (*.f64 (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))) (*.f64 kx kx) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin ky) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 kx kx) (sin.f64 ky)) (*.f64 (fma.f64 (/.f64 (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal -1 binary64) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64) (+.f64 (/.f64 #s(literal 4/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 4/45 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))))) (*.f64 kx kx) (*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))) (*.f64 kx kx) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (/.f64 (*.f64 kx kx) (sin.f64 ky)) #s(literal 1/2 binary64) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (*.f64 kx kx)) #s(literal 1/2 binary64)) (sin.f64 ky)) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 ky)) (*.f64 kx kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 ky))) (*.f64 kx kx) (sin.f64 ky))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 kx kx)) #s(literal 1/6 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx)) #s(literal 1/6 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(* 2 (pow kx 2))
(*.f64 (*.f64 kx kx) #s(literal 2 binary64))
(* (pow kx 2) (+ 2 (* -2/3 (pow kx 2))))
(*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))
(* (pow kx 2) (+ 2 (* (pow kx 2) (- (* 4/45 (pow kx 2)) 2/3))))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 4/45 binary64) (*.f64 kx kx)) #s(literal 2/3 binary64)) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))
(* (pow kx 2) (+ 2 (* (pow kx 2) (- (* (pow kx 2) (+ 4/45 (* -2/315 (pow kx 2)))) 2/3))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -2/315 binary64) (*.f64 kx kx) #s(literal 4/45 binary64)) (*.f64 kx kx)) #s(literal 2/3 binary64)) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))
(sqrt (- 1 (cos (* 2 ky))))
(sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 kx kx) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* -1/2 (* (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (*.f64 kx kx)) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (*.f64 kx kx) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 #s(literal 4/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 kx kx)) (fma.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal -1/2 binary64) #s(literal -1/3 binary64)))) (*.f64 kx kx) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (*.f64 kx kx) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky)))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (/ (pow kx 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 kx kx) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (/ (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (*.f64 kx kx)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 kx kx) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (/ (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 kx kx) (/.f64 (+.f64 #s(literal 4/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (sqrt.f64 #s(literal 2 binary64)))))) (*.f64 kx kx) (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 kx kx) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/ (sin th) (sin kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2)))
(*.f64 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))
(* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (/ (sin th) (pow kx 2))))
(*.f64 (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (/.f64 (sin.f64 th) (*.f64 kx kx))) (*.f64 kx kx))
(- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))
(-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))
(* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin kx)
(sin.f64 kx)
(- 1 (cos (* 2 kx)))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(sqrt (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))
(sqrt.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(* (/ 1 (sqrt 2)) (sqrt (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))
(/.f64 (sqrt.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))
(/ (* ky (sin th)) (sin kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (/.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 th)) (sin.f64 kx))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/12 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/120 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (/.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 th)) (fma.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (fma.f64 #s(literal -1/240 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 (*.f64 #s(literal -1/5040 binary64) (sin.f64 th)) (sin.f64 kx))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (/.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (sin th))
(*.f64 (sin.f64 th) ky)
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(*.f64 (fma.f64 (*.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) (sin.f64 th)) ky)
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 ky ky) (*.f64 #s(literal -1/6 binary64) (sin.f64 th))) (*.f64 ky ky) (sin.f64 th)) ky)
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(fma.f64 (*.f64 (*.f64 ky ky) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) #s(literal -1/2 binary64) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 kx)) (*.f64 ky ky)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 th)) (sin.f64 kx)) (*.f64 ky ky)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(* -1/2 (/ (* (pow kx 2) (sin th)) (pow ky 2)))
(*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (* -1/6 (* (pow kx 2) (sin th)))))) (pow ky 2))
(/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (sin.f64 th) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (*.f64 ky ky))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (+ (* -1/6 (* (pow kx 2) (sin th))) (* 1/2 (* (pow ky 2) (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th)))))))))) (pow ky 2))
(/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (sin.f64 th) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (*.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) #s(literal -1/15 binary64)) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th))) (*.f64 ky ky))) (*.f64 ky ky))
(/ (+ (* -1/2 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (sin th) (+ (* -1/6 (* (pow kx 2) (sin th))) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (* (pow kx 2) (sin th))) (+ (* 2/135 (* (pow kx 2) (sin th))) (* 1/3 (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th))))))))) (* 1/2 (+ (* -1/9 (* (pow kx 2) (sin th))) (* 2/45 (* (pow kx 2) (sin th))))))))))) (pow ky 2))
(/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (sin.f64 th) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) #s(literal 11/945 binary64) (*.f64 (*.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) #s(literal -1/15 binary64)) #s(literal 1/3 binary64))) (*.f64 ky ky) (*.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) #s(literal -1/15 binary64)))) (*.f64 ky ky) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th))) (*.f64 ky ky))) (*.f64 ky ky))
(* -1/2 (/ (* kx (sin th)) (pow ky 2)))
(*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))
(/ (+ (* -1/2 (* kx (sin th))) (* -1/6 (* kx (* (pow ky 2) (sin th))))) (pow ky 2))
(/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (sin.f64 th) (*.f64 (*.f64 #s(literal -1/6 binary64) kx) (*.f64 (*.f64 ky ky) (sin.f64 th)))) (*.f64 ky ky))
(/ (+ (* -1/2 (* kx (sin th))) (* (pow ky 2) (+ (* -1/6 (* kx (sin th))) (* 1/2 (* (pow ky 2) (+ (* -1/9 (* kx (sin th))) (* 2/45 (* kx (sin th))))))))) (pow ky 2))
(/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (sin.f64 th) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (*.f64 (*.f64 (sin.f64 th) kx) #s(literal -1/15 binary64)) (*.f64 (*.f64 (sin.f64 th) kx) #s(literal -1/6 binary64))) (*.f64 ky ky))) (*.f64 ky ky))
(/ (+ (* -1/2 (* kx (sin th))) (* (pow ky 2) (+ (* -1/6 (* kx (sin th))) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (* kx (sin th))) (+ (* 2/135 (* kx (sin th))) (* 1/3 (+ (* -1/9 (* kx (sin th))) (* 2/45 (* kx (sin th))))))))) (* 1/2 (+ (* -1/9 (* kx (sin th))) (* 2/45 (* kx (sin th)))))))))) (pow ky 2))
(/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (sin.f64 th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) kx) (sin.f64 th) (*.f64 (*.f64 #s(literal 1/2 binary64) (fma.f64 (*.f64 (sin.f64 th) kx) #s(literal -1/15 binary64) (*.f64 (fma.f64 (*.f64 (sin.f64 th) kx) #s(literal 11/945 binary64) (*.f64 (*.f64 (*.f64 (sin.f64 th) kx) #s(literal -1/15 binary64)) #s(literal 1/3 binary64))) (*.f64 ky ky)))) (*.f64 ky ky))) (*.f64 ky ky))) (*.f64 ky ky))
(/ (sin th) (pow ky 2))
(/.f64 (sin.f64 th) (*.f64 ky ky))
(/ (+ (sin th) (* 1/3 (* (pow ky 2) (sin th)))) (pow ky 2))
(/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))
(/ (+ (sin th) (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/9 (sin th)) (* 2/45 (sin th))))) (* -1/3 (sin th))))) (pow ky 2))
(/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (sin.f64 th))) (*.f64 ky ky) (sin.f64 th)) (*.f64 ky ky))
(/ (+ (sin th) (* (pow ky 2) (- (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/315 (sin th)) (+ (* 2/135 (sin th)) (* 1/3 (+ (* -1/9 (sin th)) (* 2/45 (sin th)))))))) (+ (* -1/9 (sin th)) (* 2/45 (sin th))))) (* -1/3 (sin th))))) (pow ky 2))
(/.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 (fma.f64 (sin.f64 th) #s(literal 11/945 binary64) (*.f64 (*.f64 (sin.f64 th) #s(literal -1/15 binary64)) #s(literal 1/3 binary64)))) (*.f64 ky ky)) (*.f64 (sin.f64 th) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (sin.f64 th))) (*.f64 ky ky) (sin.f64 th)) (*.f64 ky ky))
(- (+ 1 (* 2 (pow ky 2))) (cos (* 2 kx)))
(-.f64 (fma.f64 (*.f64 ky ky) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* -2/3 (pow ky 2))))) (cos (* 2 kx)))
(-.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -2/3 binary64) #s(literal 2 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3))))) (cos (* 2 kx)))
(-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 4/45 binary64)) #s(literal 2/3 binary64)) (*.f64 ky ky) #s(literal 2 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(* (* ky (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))))
(*.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) ky)
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx))))))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))))) #s(literal 1/2 binary64) (fma.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) ky)
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (- 1 (cos (* 2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (- 1 (cos (* 2 kx)))))))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/12 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/5040 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (fma.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (fma.f64 (fma.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (fma.f64 (/.f64 (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal -1 binary64) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2 binary64) (+.f64 (/.f64 #s(literal 4/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 4/45 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))))))) (*.f64 #s(literal -1/12 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))))))) (fma.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) ky)
(* (* ky (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))))
(*.f64 (fma.f64 (fma.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) ky)
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* 1/2 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx))))))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (*.f64 (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64) (fma.f64 (*.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/120 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (fma.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) ky)
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* 1/2 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (- 1 (cos (* 2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (- 1 (cos (* 2 kx))))))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/12 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/120 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/5040 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (fma.f64 (*.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (fma.f64 (fma.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (fma.f64 (/.f64 (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal -1 binary64) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2 binary64) (+.f64 (/.f64 #s(literal 4/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 4/45 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal -1/12 binary64) (*.f64 (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))) (fma.f64 (*.f64 #s(literal -1/120 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/5040 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (fma.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) ky)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(fma.f64 (/.f64 (*.f64 ky ky) (sin.f64 kx)) #s(literal 1/2 binary64) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (*.f64 ky ky)) #s(literal 1/2 binary64)) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (*.f64 ky ky)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) (*.f64 ky ky) (sin.f64 kx))
(* 2 (pow ky 2))
(*.f64 (*.f64 ky ky) #s(literal 2 binary64))
(* (pow ky 2) (+ 2 (* -2/3 (pow ky 2))))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -2/3 binary64) #s(literal 2 binary64)) (*.f64 ky ky))
(* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3))))
(*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 4/45 binary64)) #s(literal 2/3 binary64)) (*.f64 ky ky) #s(literal 2 binary64)) (*.f64 ky ky))
(* (pow ky 2) (+ 2 (* (pow ky 2) (- (* (pow ky 2) (+ 4/45 (* -2/315 (pow ky 2)))) 2/3))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -2/315 binary64) #s(literal 4/45 binary64)) (*.f64 ky ky)) #s(literal 2/3 binary64)) (*.f64 ky ky) #s(literal 2 binary64)) (*.f64 ky ky))
(sqrt (- 1 (cos (* 2 kx))))
(sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))
(fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 ky ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 kx))))) (* -1/2 (* (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 kx)))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (*.f64 ky ky)) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))) (*.f64 ky ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* 1/2 (* (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (- 1 (cos (* 2 kx))))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 #s(literal 4/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 ky ky)) (fma.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal -1/2 binary64) #s(literal -1/3 binary64)))) (*.f64 ky ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))) (*.f64 ky ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx)))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (/ (pow ky 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))
(/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 ky ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (/ (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 kx)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (*.f64 ky ky)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 ky ky) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* 1/2 (* (/ (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (- 1 (cos (* 2 kx))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 ky ky) (/.f64 (+.f64 #s(literal 4/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (sqrt.f64 #s(literal 2 binary64)))))) (*.f64 ky ky) (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 ky ky) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64))))
(* (sin ky) (sin th))
(*.f64 (sin.f64 th) (sin.f64 ky))
(/ (sin th) (pow (sin ky) 2))
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))) (*.f64 th th) (*.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (sin ky))
(*.f64 (sin.f64 ky) th)
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(*.f64 (fma.f64 (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 th th) (sin.f64 ky)) th)
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky))) (*.f64 th th) (sin.f64 ky)) th)
th
(* th (+ 1 (* -1/6 (pow th 2))))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)
1
#s(literal 1 binary64)
(+ 1 (* -1/6 (pow th 2)))
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 th th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1/6 binary64))) (*.f64 th th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(/ th (sin kx))
(/.f64 th (sin.f64 kx))
(* th (+ (* -1/6 (/ (pow th 2) (sin kx))) (/ 1 (sin kx))))
(*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th)
(* th (+ (* (pow th 2) (- (* 1/120 (/ (pow th 2) (sin kx))) (* 1/6 (/ 1 (sin kx))))) (/ 1 (sin kx))))
(*.f64 (fma.f64 (-.f64 (/.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) (sin.f64 kx)) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (*.f64 th th) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) th)
(* th (+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/5040 (/ (pow th 2) (sin kx))) (* 1/120 (/ 1 (sin kx))))) (* 1/6 (/ 1 (sin kx))))) (/ 1 (sin kx))))
(*.f64 (fma.f64 (-.f64 (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (sin.f64 kx)) (*.f64 th th)) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (*.f64 th th) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) th)
(* th (+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2)))))
(*.f64 (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64)) th)
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) 1/6)))))
(*.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/12 binary64) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/6 binary64)) (*.f64 th th) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) th)
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (+ (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (+ 1/120 (* -1/240 (/ (pow kx 2) (pow (sin ky) 2)))))) 1/6)))))
(*.f64 (fma.f64 (-.f64 (fma.f64 (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/240 binary64) #s(literal 1/120 binary64)) (*.f64 th th) (/.f64 (*.f64 #s(literal 1/12 binary64) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/6 binary64)) (*.f64 th th) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) th)
(* th (+ 1 (+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (+ (* 1/12 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (+ 1/120 (+ (* -1/240 (/ (pow kx 2) (pow (sin ky) 2))) (* (pow th 2) (- (* 1/10080 (/ (pow kx 2) (pow (sin ky) 2))) 1/5040)))))) 1/6)))))
(*.f64 (fma.f64 (-.f64 (fma.f64 (fma.f64 (-.f64 (/.f64 (*.f64 #s(literal 1/10080 binary64) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/5040 binary64)) (*.f64 th th) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/240 binary64) #s(literal 1/120 binary64))) (*.f64 th th) (/.f64 (*.f64 #s(literal 1/12 binary64) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/6 binary64)) (*.f64 th th) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) th)
(* -1/2 (/ (* kx th) (pow (sin ky) 2)))
(/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(* th (+ (* -1/2 (/ kx (pow (sin ky) 2))) (* 1/12 (/ (* kx (pow th 2)) (pow (sin ky) 2)))))
(*.f64 (/.f64 (fma.f64 #s(literal 1/12 binary64) (*.f64 (*.f64 th th) kx) (*.f64 #s(literal -1/2 binary64) kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)
(* th (+ (* -1/2 (/ kx (pow (sin ky) 2))) (* (pow th 2) (+ (* -1/240 (/ (* kx (pow th 2)) (pow (sin ky) 2))) (* 1/12 (/ kx (pow (sin ky) 2)))))))
(*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/12 binary64) kx (*.f64 #s(literal -1/240 binary64) (*.f64 (*.f64 th th) kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 th th) (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))) th)
(* th (+ (* -1/2 (/ kx (pow (sin ky) 2))) (* (pow th 2) (+ (* 1/12 (/ kx (pow (sin ky) 2))) (* (pow th 2) (+ (* -1/240 (/ kx (pow (sin ky) 2))) (* 1/10080 (/ (* kx (pow th 2)) (pow (sin ky) 2)))))))))
(*.f64 (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/10080 binary64) (*.f64 (*.f64 th th) kx) (*.f64 #s(literal -1/240 binary64) kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 th th) (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/12 binary64))) (*.f64 th th) (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))) th)
(/ th (pow (sin ky) 2))
(/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(* th (+ (* -1/6 (/ (pow th 2) (pow (sin ky) 2))) (/ 1 (pow (sin ky) 2))))
(*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)
(* th (+ (* (pow th 2) (- (* 1/120 (/ (pow th 2) (pow (sin ky) 2))) (* 1/6 (/ 1 (pow (sin ky) 2))))) (/ 1 (pow (sin ky) 2))))
(*.f64 (fma.f64 (-.f64 (/.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 #s(literal 1/6 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 th th) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) th)
(* th (+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/5040 (/ (pow th 2) (pow (sin ky) 2))) (* 1/120 (/ 1 (pow (sin ky) 2))))) (* 1/6 (/ 1 (pow (sin ky) 2))))) (/ 1 (pow (sin ky) 2))))
(*.f64 (fma.f64 (-.f64 (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 th th)) (/.f64 #s(literal 1/6 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 th th) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) th)
(* (* th (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))
(* th (+ (* -1/6 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (*.f64 th th) (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) th)
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 (*.f64 th th) (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal -1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky))))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) th)
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal 1/120 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 (*.f64 th th) (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64)))))) (*.f64 th th) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) th)
(* -1/6 (pow th 3))
(*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64)))
(* -1/6 (pow th 2))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
(*.f64 (neg.f64 (-.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (*.f64 th th)))) (pow.f64 th #s(literal 3 binary64)))

rewrite175.0ms (1.6%)

Memory
-7.2MiB live, 261.3MiB allocated; 20ms collecting garbage
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
053280
090245
1298245
22268234
09857234
Stop Event
iter limit
node limit
iter limit
Counts
24 → 463
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (sin.f64 ky))
(sin.f64 th)
(sin.f64 ky)
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (sin.f64 th) (sin.f64 kx))
(fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx))
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64))))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))
(sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))
Outputs
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (sin.f64 ky) (sin.f64 th))
(*.f64 (sin.f64 th) (sin.f64 ky))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal -2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 2 binary64))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)))
(sin.f64 th)
(*.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 (sin.f64 ky))))
(*.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) (fabs.f64 (sqrt.f64 (sin.f64 ky))))
(*.f64 (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(*.f64 (sqrt.f64 (neg.f64 (sin.f64 ky))) (sqrt.f64 (neg.f64 (sin.f64 ky))))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (sin.f64 ky)))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (fabs.f64 (cos.f64 ky)))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))))) (sqrt.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal -2 binary64)))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64)))
(sin.f64 ky)
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fabs.f64 (neg.f64 (neg.f64 (sin.f64 ky))))
(fabs.f64 (neg.f64 (sin.f64 ky)))
(fabs.f64 (sin.f64 ky))
(exp.f64 (/.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 2 binary64)))
(exp.f64 (log.f64 (sin.f64 ky)))
(+.f64 (cosh.f64 (log.f64 (sin.f64 ky))) (sinh.f64 (log.f64 (sin.f64 ky))))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)
(*.f64 th (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal 1 binary64)) th) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))
(/.f64 (*.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64)) #s(literal 1 binary64)) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))))
(/.f64 (*.f64 th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal 1 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))
(/.f64 (*.f64 th (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64)) #s(literal 1 binary64))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th (*.f64 #s(literal 1 binary64) th))
(fma.f64 #s(literal 1 binary64) th (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th))
(fma.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) (*.f64 th #s(literal 1 binary64)))
(fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))
(+.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th) (*.f64 #s(literal 1 binary64) th))
(+.f64 (*.f64 #s(literal 1 binary64) th) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th))
(+.f64 (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))) (*.f64 th #s(literal 1 binary64)))
(+.f64 (*.f64 th #s(literal 1 binary64)) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th))
(/.f64 (fma.f64 (*.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))) (*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))) #s(literal 1 binary64))) (*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
(/.f64 (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64)) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64)) #s(literal 1 binary64)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (neg.f64 th)) (neg.f64 th) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64))
(fma.f64 (neg.f64 th) (*.f64 (neg.f64 th) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64))
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(fma.f64 th (*.f64 (*.f64 #s(literal -1/6 binary64) th) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 th (*.f64 #s(literal -1/6 binary64) th) #s(literal 1 binary64))
(-.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal -1 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 th th)) #s(literal -1/6 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 th) (*.f64 #s(literal -1/6 binary64) th)))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/6 binary64) (*.f64 th th)))
(+.f64 (/.f64 (*.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))) (pow.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))) #s(literal -1 binary64)))
(+.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (neg.f64 (neg.f64 (sin.f64 kx))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 kx)))
(/.f64 (sin.f64 th) (sin.f64 kx))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)))
(neg.f64 (/.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 3 binary64)) (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64))) (*.f64 (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64))) (pow.f64 (sin.f64 th) #s(literal 3 binary64)))) (*.f64 (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64))) (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 th) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64))) (-.f64 (sin.f64 th) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (sin.f64 th) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 th) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (sin.f64 th) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
(/.f64 (+.f64 (pow.f64 (sin.f64 th) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (sin.f64 th) (sin.f64 th) (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 th) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64))))
(fma.f64 (*.f64 kx (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx) (sin.f64 th))
(fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
(fma.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) (sin.f64 th))
(fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) kx (sin.f64 th))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) (sin.f64 th))
(fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (sin.f64 th))
(fma.f64 kx (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th))) (/.f64 (pow.f64 (sin.f64 th) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th))))
(-.f64 (sin.f64 th) (*.f64 (neg.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) kx))
(-.f64 (sin.f64 th) (*.f64 (neg.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx)))
(-.f64 (sin.f64 th) (*.f64 (neg.f64 kx) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 3 binary64)) (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 th) #s(literal 3 binary64)) (fma.f64 (sin.f64 th) (-.f64 (sin.f64 th) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th))
(+.f64 (sin.f64 th) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
(*.f64 (/.f64 (*.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64))
(*.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal -1/2 binary64))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (/.f64 (*.f64 #s(literal -1/2 binary64) kx) (neg.f64 (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (*.f64 #s(literal -1/2 binary64) kx) (sin.f64 ky)))
(*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx)
(*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(*.f64 #s(literal -1/2 binary64) (*.f64 kx (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx))
(*.f64 kx (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(*.f64 (sin.f64 th) (/.f64 (*.f64 #s(literal -1/2 binary64) kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (/.f64 (*.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) kx) (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 ky)))
(/.f64 (/.f64 (*.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) kx) (sin.f64 ky)) (sin.f64 ky))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (*.f64 #s(literal -1/2 binary64) kx)) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (neg.f64 (sin.f64 th))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) kx)) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (*.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(*.f64 (/.f64 (sin.f64 th) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64))
(/.f64 (/.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 ky)))
(/.f64 (/.f64 (sin.f64 th) (sin.f64 ky)) (sin.f64 ky))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (fma.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)) (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (*.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))) (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))))) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))) (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)))))) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)))) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))))) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)))) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))) (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))))) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)))))) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)))) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)))) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))))) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)))))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64))) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64))) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)))))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))) (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))))) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))) (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)))))) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)))) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64))))) (*.f64 (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)))) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))) (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))))) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)))))) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)))) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)))) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64))))) (*.f64 (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)))))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)))))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (-.f64 (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))) (+.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))
(/.f64 (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(/.f64 (-.f64 (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64))) (+.f64 (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) (*.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (neg.f64 (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64))) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64))))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64))))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))
(/.f64 (+.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (+.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
(/.f64 (+.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))))
(fma.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (neg.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (neg.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))
(fma.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (neg.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (neg.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))
(fma.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))
(fma.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal -2 binary64) ky (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal -2 binary64) ky (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))
(fma.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal 2 binary64) ky (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal 2 binary64) ky (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))
(fma.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal -2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal -2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal 2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal 2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(-.f64 (/.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (/.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))
(-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(-.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(-.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))
(+.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+.f64 (/.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)) (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (/.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)) (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))))
(+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))
(+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))
(/.f64 (*.f64 (sin.f64 ky) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
(*.f64 (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal -2 binary64)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))) #s(literal 2 binary64))
(/.f64 (neg.f64 (neg.f64 (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2 binary64))))
(/.f64 (hypot.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3/2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3/2 binary64))) (sqrt.f64 (*.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) #s(literal 2 binary64))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (sin.f64 kx))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (sin.f64 ky))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (sin.f64 kx))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (sin.f64 kx) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (sin.f64 ky) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(exp.f64 (-.f64 (*.f64 (log.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 1/2 binary64)) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
(*.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) (neg.f64 (sqrt.f64 (sin.f64 kx))))
(*.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) (fabs.f64 (sqrt.f64 (sin.f64 kx))))
(*.f64 (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(*.f64 (sqrt.f64 (neg.f64 (sin.f64 kx))) (sqrt.f64 (neg.f64 (sin.f64 kx))))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (sin.f64 kx)))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 kx)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (fabs.f64 (cos.f64 kx)))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64))))) (sqrt.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal -2 binary64)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))
(sin.f64 kx)
(sqrt.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fabs.f64 (neg.f64 (neg.f64 (sin.f64 kx))))
(fabs.f64 (neg.f64 (sin.f64 kx)))
(fabs.f64 (sin.f64 kx))
(exp.f64 (/.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 2 binary64)))
(exp.f64 (log.f64 (sin.f64 kx)))
(+.f64 (cosh.f64 (log.f64 (sin.f64 kx))) (sinh.f64 (log.f64 (sin.f64 kx))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (neg.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (neg.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal -2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal -2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal 2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal 2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)))
(fma.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(-.f64 (pow.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal -1 binary64)) (/.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64))))
(-.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)) (/.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (neg.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (neg.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal -2 binary64) ky (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal -2 binary64) ky (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal 2 binary64) ky (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal 2 binary64) ky (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)))
(fma.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(-.f64 (pow.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal -1 binary64)) (/.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))))
(-.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)) (/.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(*.f64 (neg.f64 (pow.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1/4 binary64)) (pow.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) (*.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))))) (sqrt.f64 (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)))))) (sqrt.f64 (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64))) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))))) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)))))) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))))) (sqrt.f64 (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)))))) (sqrt.f64 (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))))) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)))))) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))
(/.f64 (hypot.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3/2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3/2 binary64))) (sqrt.f64 (+.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))))
(/.f64 (hypot.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3/2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3/2 binary64))) (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))))
(sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(exp.f64 (*.f64 (log.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 1/2 binary64))))
(*.f64 (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal -2 binary64)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))) #s(literal 2 binary64))
(/.f64 (neg.f64 (neg.f64 (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (sqrt.f64 (*.f64 (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2 binary64))))
(/.f64 (hypot.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3/2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3/2 binary64))) (sqrt.f64 (*.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) #s(literal 2 binary64))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (sin.f64 kx))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (sin.f64 ky))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (sin.f64 kx))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (sin.f64 kx) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (sin.f64 ky) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(exp.f64 (-.f64 (*.f64 (log.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 1/2 binary64)) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))

eval230.0ms (2.1%)

Memory
3.1MiB live, 346.1MiB allocated; 171ms collecting garbage
Compiler

Compiled 25 601 to 3 305 computations (87.1% saved)

prune116.0ms (1%)

Memory
-25.0MiB live, 217.0MiB allocated; 17ms collecting garbage
Pruning

63 alts after pruning (60 fresh and 3 done)

PrunedKeptTotal
New61947666
Fresh211334
Picked415
Done022
Total64463707
Accuracy
100.0%
Counts
707 → 63
Alt Table
Click to see full alt table
StatusAccuracyProgram
70.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))))
95.4%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))))
55.4%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
42.9%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
51.6%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
51.0%
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
38.4%
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
78.0%
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sin.f64 th))
77.9%
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
99.6%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
46.4%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
78.3%
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 ky))
29.1%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
55.2%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
78.3%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
43.6%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
37.8%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
46.2%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
33.2%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 #s(approx (- 1 (cos (* 2 ky))) (*.f64 (*.f64 ky ky) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
29.9%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
27.2%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 ky ky) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
38.3%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
34.5%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
30.2%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
52.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
32.0%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
55.1%
(*.f64 (/.f64 #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
72.1%
(*.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sin.f64 th))
78.0%
(*.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
28.0%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
15.0%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (*.f64 (sqrt.f64 (neg.f64 (sin.f64 kx))) (sqrt.f64 (neg.f64 (sin.f64 kx)))))) (sin.f64 ky))
29.6%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))
31.3%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))))
32.0%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
28.5%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
43.1%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
91.9%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))) (sin.f64 ky))
50.9%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)) (sin.f64 ky))
18.8%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
23.5%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
19.9%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
19.4%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
34.6%
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
25.2%
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
78.0%
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) (sin.f64 th))
22.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
29.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
26.6%
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
43.8%
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
77.9%
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
34.4%
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
25.1%
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
24.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
18.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
26.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
29.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
4.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
17.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
10.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
11.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
18.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
11.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
8.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
Compiler

Compiled 3 650 to 2 713 computations (25.7% saved)

simplify185.0ms (1.7%)

Memory
7.2MiB live, 193.9MiB allocated; 15ms collecting garbage
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f64 th)
cost-diff0
(*.f64 (sin.f64 th) (sin.f64 ky))
cost-diff0
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
cost-diff2
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)
cost-diff0
(/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64))))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
cost-diff0
(/.f64 (sin.f64 th) (sin.f64 kx))
cost-diff0
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
cost-diff0
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
cost-diff2
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)
cost-diff0
#s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64))
cost-diff0
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)
cost-diff0
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th))
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
cost-diff0
(*.f64 (sin.f64 th) (sin.f64 ky))
cost-diff0
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))))
cost-diff1
(hypot.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64))))
cost-diff5
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
066483
0111479
1219479
2537469
31268459
42607435
55262435
08276419
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (sin.f64 th) (sin.f64 ky))
(sin.f64 th)
th
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))
(hypot.f64 (sin.f64 kx) (sin.f64 kx))
(sin.f64 kx)
kx
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th))
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)
#s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64))
#s(literal 1 binary64)
th
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (sin.f64 th) (sin.f64 kx))
(sin.f64 th)
th
(sin.f64 kx)
kx
#s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)
(fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 ky ky)
ky
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64))))
(sin.f64 ky)
ky
(/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
#s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64))
(*.f64 kx kx)
kx
#s(literal 2 binary64)
#s(literal 1 binary64)
(cos.f64 (*.f64 #s(literal -2 binary64) ky))
(*.f64 #s(literal -2 binary64) ky)
#s(literal -2 binary64)
(sqrt.f64 #s(literal 2 binary64))
(sin.f64 th)
th
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(*.f64 (sin.f64 th) (sin.f64 ky))
(sin.f64 th)
th
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))
#s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))
#s(literal -1/6 binary64)
(*.f64 kx kx)
kx
#s(literal 1 binary64)
Outputs
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sin.f64 th))
(sin.f64 th)
th
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64))))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))
(fabs.f64 (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 kx))
(sin.f64 kx)
kx
(sqrt.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th))
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)
#s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64))
#s(literal 1 binary64)
th
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (sin.f64 th) (sin.f64 kx))
(sin.f64 th)
th
(sin.f64 kx)
kx
#s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))
#s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)
(fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 ky ky)
ky
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sin.f64 th)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))))
(sin.f64 ky)
ky
(/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))
#s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
#s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))
(-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))
(fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64))
(*.f64 kx kx)
kx
#s(literal 2 binary64)
#s(literal 1 binary64)
(cos.f64 (*.f64 #s(literal -2 binary64) ky))
(cos.f64 (*.f64 #s(literal 2 binary64) ky))
(*.f64 #s(literal -2 binary64) ky)
#s(literal -2 binary64)
(sqrt.f64 #s(literal 2 binary64))
(sin.f64 th)
th
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) (sin.f64 ky)))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sin.f64 th))
(sin.f64 th)
th
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))
(hypot.f64 #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)) (sin.f64 ky))
#s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))
#s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)
(fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))
(fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))
#s(literal -1/6 binary64)
(*.f64 kx kx)
kx
#s(literal 1 binary64)

localize438.0ms (3.9%)

Memory
18.4MiB live, 443.9MiB allocated; 67ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.16015625
(*.f64 (sin.f64 th) (sin.f64 ky))
accuracy0.3166277871938751
(fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))
accuracy2.8491840257888934
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
accuracy30.51840012728696
#s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))
accuracy0.4576950195368841
(/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
accuracy4.539290654018221
(sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
accuracy8.811168941016923
(-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
accuracy30.187728857914685
#s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
accuracy0.217128759768442
(/.f64 (sin.f64 th) (sin.f64 kx))
accuracy0.31478500976844204
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
accuracy34.208667112478565
#s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))
accuracy45.47919672591884
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
accuracy0.0546875
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)
accuracy28.611572264620182
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th))
accuracy29.1110853283164
#s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64))
accuracy45.36492942332041
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
accuracy0.14453125
(hypot.f64 (sin.f64 kx) (sin.f64 kx))
accuracy0.16015625
(*.f64 (sin.f64 th) (sin.f64 ky))
accuracy0.45541000976844204
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))
accuracy2.8491840257888934
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))))
Samples
143.0ms200×0valid
86.0ms31×2valid
82.0ms25×1valid
Compiler

Compiled 425 to 57 computations (86.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 254.0ms
ival-mult: 91.0ms (35.8% of total)
ival-cos: 45.0ms (17.7% of total)
ival-hypot: 32.0ms (12.6% of total)
ival-sin: 20.0ms (7.9% of total)
ival-add: 16.0ms (6.3% of total)
ival-div: 15.0ms (5.9% of total)
adjust: 12.0ms (4.7% of total)
ival-sqrt: 6.0ms (2.4% of total)
ival-pow2: 6.0ms (2.4% of total)
ival-sub: 5.0ms (2% of total)
const: 4.0ms (1.6% of total)
exact: 1.0ms (0.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series69.0ms (0.6%)

Memory
2.6MiB live, 54.6MiB allocated; 12ms collecting garbage
Counts
26 → 141
Calls
Call 1
Inputs
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))
(hypot.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (sin.f64 th) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th))
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)
#s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (sin.f64 th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64))))
(sin.f64 ky)
(/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(sin.f64 th)
(hypot.f64 (sin.f64 kx) (sin.f64 kx))
#s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))
#s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
#s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))
(fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))
Outputs
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(/ (sin th) (sin ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(/ (sin th) kx)
(/ (+ (sin th) (* 1/6 (* (pow kx 2) (sin th)))) kx)
(/ (+ (sin th) (* (pow kx 2) (- (* -1 (* (pow kx 2) (+ (* -1/36 (sin th)) (* 1/120 (sin th))))) (* -1/6 (sin th))))) kx)
(/ (+ (sin th) (* (pow kx 2) (- (* (pow kx 2) (- (* -1 (* (pow kx 2) (+ (* -1/5040 (sin th)) (+ (* 1/720 (sin th)) (* 1/6 (+ (* -1/36 (sin th)) (* 1/120 (sin th)))))))) (+ (* -1/36 (sin th)) (* 1/120 (sin th))))) (* -1/6 (sin th))))) kx)
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(+ (* -1 (* (* (pow kx 2) (* (sin ky) (* (sin th) (sqrt 2)))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky)))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(+ (* -1 (* (* (pow kx 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin ky) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky)))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (/ (pow kx 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (/ (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (/ (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
(* kx (sqrt 2))
(* kx (+ (sqrt 2) (* -1/6 (* (pow kx 2) (sqrt 2)))))
(* kx (+ (sqrt 2) (* (pow kx 2) (+ (* -1/6 (sqrt 2)) (* 1/120 (* (pow kx 2) (sqrt 2)))))))
(* kx (+ (sqrt 2) (* (pow kx 2) (+ (* -1/6 (sqrt 2)) (* (pow kx 2) (+ (* -1/5040 (* (pow kx 2) (sqrt 2))) (* 1/120 (sqrt 2))))))))
(- 1 (cos (* 2 ky)))
(- (+ 1 (* 2 (pow kx 2))) (cos (* 2 ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* -2/3 (pow kx 2))))) (cos (* 2 ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* (pow kx 2) (- (* 4/45 (pow kx 2)) 2/3))))) (cos (* 2 ky)))
(- 1 (cos (* -2 ky)))
(- (+ 1 (* 2 (pow kx 2))) (cos (* -2 ky)))
(sqrt (- 1 (cos (* 2 ky))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* -1/2 (* (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
1
(+ 1 (* -1/6 (pow kx 2)))
(sin kx)
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(/ (sin th) (sin kx))
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(* (/ 1 (sqrt 2)) (sqrt (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))
(* -1/6 (pow kx 3))
(* (pow kx 3) (- (/ 1 (pow kx 2)) 1/6))
(* (sin kx) (sqrt 2))
(- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))
(* 2 (pow kx 2))
(* (pow kx 2) (- (+ 2 (/ 1 (pow kx 2))) (/ (cos (* -2 ky)) (pow kx 2))))
(sqrt (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))
(* -1/6 (pow kx 2))
(* (pow kx 2) (- (/ 1 (pow kx 2)) 1/6))
(* -1 (* (pow kx 3) (- 1/6 (/ 1 (pow kx 2)))))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(* ky (sin th))
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(* (* ky (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx))))))))))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (- 1 (cos (* 2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (- 1 (cos (* 2 kx)))))))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/12 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/5040 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))))))))))
(* (* ky (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))))
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* 1/2 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx))))))))))))))
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* 1/2 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (- 1 (cos (* 2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (- 1 (cos (* 2 kx))))))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/12 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/120 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/5040 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))))))))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx)))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (/ (pow ky 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (/ (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 kx)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* 1/2 (* (/ (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (- 1 (cos (* 2 kx))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))
(- 1 (cos (* 2 kx)))
(- (+ 1 (* 2 (pow ky 2))) (cos (* 2 kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* -2/3 (pow ky 2))))) (cos (* 2 kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3))))) (cos (* 2 kx)))
(+ (* 2 (pow kx 2)) (* 2 (pow ky 2)))
(+ (* 2 (pow kx 2)) (* (pow ky 2) (+ 2 (* -2/3 (pow ky 2)))))
(+ (* 2 (pow kx 2)) (* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3)))))
(sqrt (- 1 (cos (* 2 kx))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 kx))))) (* -1/2 (* (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 kx)))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* 1/2 (* (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (- 1 (cos (* 2 kx))))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))
(* (sin ky) (sin th))
(* -1/6 (pow ky 3))
(* (pow ky 3) (- (/ 1 (pow ky 2)) 1/6))
(* -1 (* (pow ky 3) (- 1/6 (/ 1 (pow ky 2)))))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (sin ky))
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
th
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(+ 1 (* -1/6 (pow th 2)))
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(/ th (sin kx))
(* th (+ (* -1/6 (/ (pow th 2) (sin kx))) (/ 1 (sin kx))))
(* th (+ (* (pow th 2) (- (* 1/120 (/ (pow th 2) (sin kx))) (* 1/6 (/ 1 (sin kx))))) (/ 1 (sin kx))))
(* th (+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/5040 (/ (pow th 2) (sin kx))) (* 1/120 (/ 1 (sin kx))))) (* 1/6 (/ 1 (sin kx))))) (/ 1 (sin kx))))
(* (* th (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(* th (+ (* -1/6 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))))
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))))))))
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))))))))))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1/6 (pow th 2))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Calls

9 calls:

TimeVariablePointExpression
32.0ms
ky
@-inf
((/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)) (sqrt (+ (* (sin ky) (sin ky)) (* (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)) (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2))))) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)) (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)))))) (* (sin th) (sin ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (* (+ (* (* ky ky) -1/6) 1) ky) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/ (sin th) (sin kx)) (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2)) (* (+ (* -1/6 (* kx kx)) 1) kx) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sin ky) (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sin kx) (+ (* -1/6 (* kx kx)) 1))
5.0ms
kx
@-inf
((/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)) (sqrt (+ (* (sin ky) (sin ky)) (* (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)) (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2))))) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)) (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)))))) (* (sin th) (sin ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (* (+ (* (* ky ky) -1/6) 1) ky) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/ (sin th) (sin kx)) (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2)) (* (+ (* -1/6 (* kx kx)) 1) kx) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sin ky) (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sin kx) (+ (* -1/6 (* kx kx)) 1))
5.0ms
kx
@inf
((/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)) (sqrt (+ (* (sin ky) (sin ky)) (* (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)) (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2))))) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)) (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)))))) (* (sin th) (sin ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (* (+ (* (* ky ky) -1/6) 1) ky) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/ (sin th) (sin kx)) (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2)) (* (+ (* -1/6 (* kx kx)) 1) kx) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sin ky) (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sin kx) (+ (* -1/6 (* kx kx)) 1))
5.0ms
ky
@inf
((/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)) (sqrt (+ (* (sin ky) (sin ky)) (* (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)) (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2))))) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)) (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)))))) (* (sin th) (sin ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (* (+ (* (* ky ky) -1/6) 1) ky) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/ (sin th) (sin kx)) (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2)) (* (+ (* -1/6 (* kx kx)) 1) kx) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sin ky) (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sin kx) (+ (* -1/6 (* kx kx)) 1))
4.0ms
th
@-inf
((/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)) (sqrt (+ (* (sin ky) (sin ky)) (* (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)) (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2))))) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)) (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sqrt 2)))))) (* (sin th) (sin ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (* (+ (* (* ky ky) -1/6) 1) ky) (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/ (sin th) (sin kx)) (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2)) (* (+ (* -1/6 (* kx kx)) 1) kx) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (sin ky) (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sin kx) (+ (* -1/6 (* kx kx)) 1))

simplify245.0ms (2.2%)

Memory
19.3MiB live, 204.6MiB allocated; 38ms collecting garbage
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07955121
129424796
277304583
081404376
Stop Event
iter limit
node limit
Counts
141 → 138
Calls
Call 1
Inputs
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(/ (sin th) (sin ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(/ (sin th) kx)
(/ (+ (sin th) (* 1/6 (* (pow kx 2) (sin th)))) kx)
(/ (+ (sin th) (* (pow kx 2) (- (* -1 (* (pow kx 2) (+ (* -1/36 (sin th)) (* 1/120 (sin th))))) (* -1/6 (sin th))))) kx)
(/ (+ (sin th) (* (pow kx 2) (- (* (pow kx 2) (- (* -1 (* (pow kx 2) (+ (* -1/5040 (sin th)) (+ (* 1/720 (sin th)) (* 1/6 (+ (* -1/36 (sin th)) (* 1/120 (sin th)))))))) (+ (* -1/36 (sin th)) (* 1/120 (sin th))))) (* -1/6 (sin th))))) kx)
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(+ (* -1 (* (* (pow kx 2) (* (sin ky) (* (sin th) (sqrt 2)))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky)))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(+ (* -1 (* (* (pow kx 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin ky) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky)))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (/ (pow kx 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (/ (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (/ (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
(* kx (sqrt 2))
(* kx (+ (sqrt 2) (* -1/6 (* (pow kx 2) (sqrt 2)))))
(* kx (+ (sqrt 2) (* (pow kx 2) (+ (* -1/6 (sqrt 2)) (* 1/120 (* (pow kx 2) (sqrt 2)))))))
(* kx (+ (sqrt 2) (* (pow kx 2) (+ (* -1/6 (sqrt 2)) (* (pow kx 2) (+ (* -1/5040 (* (pow kx 2) (sqrt 2))) (* 1/120 (sqrt 2))))))))
(- 1 (cos (* 2 ky)))
(- (+ 1 (* 2 (pow kx 2))) (cos (* 2 ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* -2/3 (pow kx 2))))) (cos (* 2 ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* (pow kx 2) (- (* 4/45 (pow kx 2)) 2/3))))) (cos (* 2 ky)))
(- 1 (cos (* -2 ky)))
(- (+ 1 (* 2 (pow kx 2))) (cos (* -2 ky)))
(sqrt (- 1 (cos (* 2 ky))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* -1/2 (* (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
1
(+ 1 (* -1/6 (pow kx 2)))
(sin kx)
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(/ (sin th) (sin kx))
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(* (/ 1 (sqrt 2)) (sqrt (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))
(* -1/6 (pow kx 3))
(* (pow kx 3) (- (/ 1 (pow kx 2)) 1/6))
(* (sin kx) (sqrt 2))
(- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))
(* 2 (pow kx 2))
(* (pow kx 2) (- (+ 2 (/ 1 (pow kx 2))) (/ (cos (* -2 ky)) (pow kx 2))))
(sqrt (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))
(* -1/6 (pow kx 2))
(* (pow kx 2) (- (/ 1 (pow kx 2)) 1/6))
(* -1 (* (pow kx 3) (- 1/6 (/ 1 (pow kx 2)))))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(* ky (sin th))
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(* (* ky (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx))))))))))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (- 1 (cos (* 2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (- 1 (cos (* 2 kx)))))))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/12 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/5040 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))))))))))
(* (* ky (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))))
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* 1/2 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx))))))))))))))
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* 1/2 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (- 1 (cos (* 2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (- 1 (cos (* 2 kx))))))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/12 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/120 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/5040 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))))))))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx)))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (/ (pow ky 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (/ (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 kx)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* 1/2 (* (/ (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (- 1 (cos (* 2 kx))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))
(- 1 (cos (* 2 kx)))
(- (+ 1 (* 2 (pow ky 2))) (cos (* 2 kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* -2/3 (pow ky 2))))) (cos (* 2 kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3))))) (cos (* 2 kx)))
(+ (* 2 (pow kx 2)) (* 2 (pow ky 2)))
(+ (* 2 (pow kx 2)) (* (pow ky 2) (+ 2 (* -2/3 (pow ky 2)))))
(+ (* 2 (pow kx 2)) (* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3)))))
(sqrt (- 1 (cos (* 2 kx))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 kx))))) (* -1/2 (* (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 kx)))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* 1/2 (* (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (- 1 (cos (* 2 kx))))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))
(* (sin ky) (sin th))
(* -1/6 (pow ky 3))
(* (pow ky 3) (- (/ 1 (pow ky 2)) 1/6))
(* -1 (* (pow ky 3) (- 1/6 (/ 1 (pow ky 2)))))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (sin ky))
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
th
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(+ 1 (* -1/6 (pow th 2)))
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(/ th (sin kx))
(* th (+ (* -1/6 (/ (pow th 2) (sin kx))) (/ 1 (sin kx))))
(* th (+ (* (pow th 2) (- (* 1/120 (/ (pow th 2) (sin kx))) (* 1/6 (/ 1 (sin kx))))) (/ 1 (sin kx))))
(* th (+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/5040 (/ (pow th 2) (sin kx))) (* 1/120 (/ 1 (sin kx))))) (* 1/6 (/ 1 (sin kx))))) (/ 1 (sin kx))))
(* (* th (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(* th (+ (* -1/6 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))))
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))))))))
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))))))))))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1/6 (pow th 2))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Outputs
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(*.f64 (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 kx kx)) #s(literal 1/6 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx)) #s(literal 1/6 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (/.f64 (fma.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (*.f64 kx kx)) #s(literal -1/2 binary64) #s(literal 1/2 binary64)) (sin.f64 ky)) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/2 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 ky)) (*.f64 kx kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 ky))) (*.f64 kx kx) (sin.f64 ky))
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 kx kx) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) (sin.f64 th))
(/ (sin th) (sin ky))
(/.f64 (sin.f64 th) (sin.f64 ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(/.f64 (fma.f64 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (sin.f64 th)) (sin.f64 ky))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (sin.f64 ky)) (*.f64 kx kx)))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (sin.f64 ky)) (*.f64 kx kx)) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (sin.f64 ky)))) (*.f64 kx kx) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(/ (sin th) kx)
(/.f64 (sin.f64 th) kx)
(/ (+ (sin th) (* 1/6 (* (pow kx 2) (sin th)))) kx)
(/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx)
(/ (+ (sin th) (* (pow kx 2) (- (* -1 (* (pow kx 2) (+ (* -1/36 (sin th)) (* 1/120 (sin th))))) (* -1/6 (sin th))))) kx)
(/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal -7/360 binary64))) (*.f64 kx kx) (*.f64 #s(literal 1/6 binary64) (sin.f64 th))) (*.f64 kx kx) (sin.f64 th)) kx)
(/ (+ (sin th) (* (pow kx 2) (- (* (pow kx 2) (- (* -1 (* (pow kx 2) (+ (* -1/5040 (sin th)) (+ (* 1/720 (sin th)) (* 1/6 (+ (* -1/36 (sin th)) (* 1/120 (sin th)))))))) (+ (* -1/36 (sin th)) (* 1/120 (sin th))))) (* -1/6 (sin th))))) kx)
(/.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (neg.f64 (fma.f64 (sin.f64 th) #s(literal 1/840 binary64) (*.f64 (*.f64 (sin.f64 th) #s(literal -7/360 binary64)) #s(literal 1/6 binary64)))) (*.f64 kx kx)) (*.f64 (sin.f64 th) #s(literal -7/360 binary64))) (*.f64 kx kx) (*.f64 #s(literal 1/6 binary64) (sin.f64 th))) (*.f64 kx kx) (sin.f64 th)) kx)
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))
(+ (* -1 (* (* (pow kx 2) (* (sin ky) (* (sin th) (sqrt 2)))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(fma.f64 (neg.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)) (*.f64 kx kx))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 kx kx) (sin.f64 ky)) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (-.f64 (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (/.f64 #s(literal -3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky)))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 kx kx) (sin.f64 ky)) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (+.f64 (/.f64 (+.f64 (/.f64 #s(literal 4/3 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 4/45 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (/.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 4 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) #s(literal 2 binary64) (neg.f64 (-.f64 (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (/.f64 #s(literal -3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 (-.f64 (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (/.f64 #s(literal -3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))))) (*.f64 kx kx) (*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))
(+ (* -1 (* (* (pow kx 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(fma.f64 (neg.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (*.f64 kx kx))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 kx kx) (sin.f64 ky)) (*.f64 (-.f64 (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (/.f64 #s(literal -3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (*.f64 (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))) (*.f64 kx kx) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin ky) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 kx kx) (sin.f64 ky)) (*.f64 (+.f64 (/.f64 (+.f64 (/.f64 #s(literal 4/3 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 4/45 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (/.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 4 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) #s(literal 2 binary64) (neg.f64 (-.f64 (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (/.f64 #s(literal -3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (-.f64 (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (/.f64 #s(literal -3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))))) (*.f64 kx kx) (*.f64 (*.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))) (*.f64 kx kx) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky)))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (/ (pow kx 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 kx kx) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (/ (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (*.f64 kx kx)) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 kx kx) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (/ (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 4/45 binary64)) (*.f64 kx kx)) (fma.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal -1/2 binary64) #s(literal -1/3 binary64))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 kx kx) (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 kx kx) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))))
(* kx (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) kx)
(* kx (+ (sqrt 2) (* -1/6 (* (pow kx 2) (sqrt 2)))))
(*.f64 (*.f64 (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64))) kx)
(* kx (+ (sqrt 2) (* (pow kx 2) (+ (* -1/6 (sqrt 2)) (* 1/120 (* (pow kx 2) (sqrt 2)))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 kx kx) #s(literal -1/6 binary64))) (*.f64 kx kx) (sqrt.f64 #s(literal 2 binary64))) kx)
(* kx (+ (sqrt 2) (* (pow kx 2) (+ (* -1/6 (sqrt 2)) (* (pow kx 2) (+ (* -1/5040 (* (pow kx 2) (sqrt 2))) (* 1/120 (sqrt 2))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64))) (*.f64 kx kx) (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal -1/6 binary64))) (*.f64 kx kx) (sqrt.f64 #s(literal 2 binary64))) kx)
(- 1 (cos (* 2 ky)))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(- (+ 1 (* 2 (pow kx 2))) (cos (* 2 ky)))
(-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* -2/3 (pow kx 2))))) (cos (* 2 ky)))
(-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* (pow kx 2) (- (* 4/45 (pow kx 2)) 2/3))))) (cos (* 2 ky)))
(-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 #s(literal 4/45 binary64) (*.f64 kx kx)) #s(literal 2/3 binary64)) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(- 1 (cos (* -2 ky)))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(- (+ 1 (* 2 (pow kx 2))) (cos (* -2 ky)))
(-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(sqrt (- 1 (cos (* 2 ky))))
(sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 kx kx) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* -1/2 (* (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (*.f64 kx kx)) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (*.f64 kx kx) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 4/45 binary64)) (*.f64 kx kx)) (fma.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal -1/2 binary64) #s(literal -1/3 binary64)))) (*.f64 kx kx) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (*.f64 kx kx) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
1
#s(literal 1 binary64)
(+ 1 (* -1/6 (pow kx 2)))
(fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))
(sin kx)
(sin.f64 kx)
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/ (sin th) (sin kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))
(* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))
(* (/ 1 (sqrt 2)) (sqrt (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))
(/.f64 (sqrt.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64)))
(* -1/6 (pow kx 3))
(*.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64))
(* (pow kx 3) (- (/ 1 (pow kx 2)) 1/6))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 kx kx)) #s(literal 1/6 binary64)) (pow.f64 kx #s(literal 3 binary64)))
(* (sin kx) (sqrt 2))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 kx))
(- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))
(-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(* 2 (pow kx 2))
(*.f64 (*.f64 kx kx) #s(literal 2 binary64))
(* (pow kx 2) (- (+ 2 (/ 1 (pow kx 2))) (/ (cos (* -2 ky)) (pow kx 2))))
(*.f64 (-.f64 (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 kx kx)) #s(literal 2 binary64)) (/.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (*.f64 kx kx))) (*.f64 kx kx))
(sqrt (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))
(sqrt.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))
(* -1/6 (pow kx 2))
(*.f64 (*.f64 kx kx) #s(literal -1/6 binary64))
(* (pow kx 2) (- (/ 1 (pow kx 2)) 1/6))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 kx kx)) #s(literal 1/6 binary64)) (*.f64 kx kx))
(* -1 (* (pow kx 3) (- 1/6 (/ 1 (pow kx 2)))))
(*.f64 (pow.f64 (neg.f64 kx) #s(literal 3 binary64)) (-.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (*.f64 kx kx))))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(fma.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (/.f64 (fma.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (*.f64 ky ky)) #s(literal -1/2 binary64) #s(literal 1/2 binary64)) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 2/45 binary64)) (*.f64 ky ky)) #s(literal 1/2 binary64) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) (*.f64 ky ky) (sin.f64 kx))
(/ (* ky (sin th)) (sin kx))
(*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (sin.f64 th) (/.f64 #s(literal -1/6 binary64) (sin.f64 kx)) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (sin.f64 th) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 (sin.f64 th) #s(literal 1/12 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (fma.f64 (sin.f64 th) (/.f64 #s(literal -1/6 binary64) (sin.f64 kx)) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (sin.f64 th) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 th)) (fma.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (fma.f64 (sin.f64 th) (/.f64 #s(literal -1/5040 binary64) (sin.f64 kx)) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/240 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 (sin.f64 th) #s(literal 1/12 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (fma.f64 (sin.f64 th) (/.f64 #s(literal -1/6 binary64) (sin.f64 kx)) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (sin th))
(*.f64 (sin.f64 th) ky)
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(*.f64 (fma.f64 (*.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) (sin.f64 th)) ky)
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 ky ky) (*.f64 #s(literal -1/6 binary64) (sin.f64 th))) (*.f64 ky ky) (sin.f64 th)) ky)
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(fma.f64 (*.f64 (*.f64 ky ky) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) #s(literal -1/2 binary64) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (sin.f64 kx)) (*.f64 ky ky)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 th)) (sin.f64 kx)) (*.f64 ky ky)) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(* (* ky (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))))
(*.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) ky)
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx))))))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (-.f64 (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))) (/.f64 #s(literal -3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))))) #s(literal 1/2 binary64) (fma.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) ky)
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (- 1 (cos (* 2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (- 1 (cos (* 2 kx)))))))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/12 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/5040 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (fma.f64 (fma.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (+.f64 (/.f64 (+.f64 (/.f64 #s(literal 4/3 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 4/45 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))) (/.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 4 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))) #s(literal 2 binary64) (neg.f64 (-.f64 (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))) (/.f64 #s(literal -3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))) (*.f64 #s(literal -1/12 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (-.f64 (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))) (/.f64 #s(literal -3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))))))) (fma.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (-.f64 (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))) (/.f64 #s(literal -3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))))) #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))))))) (*.f64 ky ky) (fma.f64 (neg.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) ky)
(* (* ky (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))))
(*.f64 (fma.f64 (fma.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal -1/6 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) ky)
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* 1/2 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx))))))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (*.f64 (-.f64 (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))) (/.f64 #s(literal -3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64) (fma.f64 (*.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal 1/120 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (fma.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal -1/6 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) ky)
(* ky (+ (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (+ (* 1/6 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (+ (* 1/2 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (- 1 (cos (* 2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (- 1 (cos (* 2 kx))))))))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/12 (* (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* 2 kx))) 3)))) (sqrt (- 1 (cos (* 2 kx)))))) (+ (* -1/120 (* (sqrt 2) (sqrt (/ 1 (pow (- 1 (cos (* 2 kx))) 3))))) (* -1/5040 (* (sqrt 2) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 (+.f64 (/.f64 #s(literal 4/3 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 4/45 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))) (/.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 4 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))) #s(literal 2 binary64) (neg.f64 (-.f64 (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))) (/.f64 #s(literal -3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal -1/12 binary64) (*.f64 (-.f64 (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))) (/.f64 #s(literal -3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))) (fma.f64 (*.f64 #s(literal -1/120 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/5040 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (*.f64 (-.f64 (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))) (/.f64 #s(literal -3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64)))) #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal 1/6 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))))))) (*.f64 ky ky) (fma.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) #s(literal -1/6 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx)))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (/ (pow ky 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))
(/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 ky ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (/ (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 kx)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (*.f64 ky ky)) #s(literal 1 binary64)) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 ky ky) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* 1/2 (* (/ (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (- 1 (cos (* 2 kx))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 4/45 binary64)) (*.f64 ky ky)) (fma.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal -1/2 binary64) #s(literal -1/3 binary64))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 ky ky) (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 ky ky) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64))))
(- 1 (cos (* 2 kx)))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(- (+ 1 (* 2 (pow ky 2))) (cos (* 2 kx)))
(-.f64 (fma.f64 (*.f64 ky ky) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* -2/3 (pow ky 2))))) (cos (* 2 kx)))
(-.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -2/3 binary64) #s(literal 2 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3))))) (cos (* 2 kx)))
(-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 4/45 binary64)) #s(literal 2/3 binary64)) (*.f64 ky ky) #s(literal 2 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(+ (* 2 (pow kx 2)) (* 2 (pow ky 2)))
(*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))
(+ (* 2 (pow kx 2)) (* (pow ky 2) (+ 2 (* -2/3 (pow ky 2)))))
(fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -2/3 binary64) #s(literal 2 binary64)) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal 2 binary64)))
(+ (* 2 (pow kx 2)) (* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3)))))
(fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 4/45 binary64)) #s(literal 2/3 binary64)) (*.f64 ky ky) #s(literal 2 binary64)) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal 2 binary64)))
(sqrt (- 1 (cos (* 2 kx))))
(sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (sqrt (/ 1 (- 1 (cos (* 2 kx)))))))
(fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 ky ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 kx))))) (* -1/2 (* (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 kx)))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (*.f64 ky ky)) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))) (*.f64 ky ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))
(+ (sqrt (- 1 (cos (* 2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))) (* 1/2 (* (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 kx))))) (- 1 (cos (* 2 kx))))))) (sqrt (/ 1 (- 1 (cos (* 2 kx))))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 4/45 binary64)) (*.f64 ky ky)) (fma.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal -1/2 binary64) #s(literal -1/3 binary64)))) (*.f64 ky ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))) (*.f64 ky ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))
(* (sin ky) (sin th))
(*.f64 (sin.f64 th) (sin.f64 ky))
(* -1/6 (pow ky 3))
(*.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64))
(* (pow ky 3) (- (/ 1 (pow ky 2)) 1/6))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)))
(* -1 (* (pow ky 3) (- 1/6 (/ 1 (pow ky 2)))))
(*.f64 (pow.f64 (neg.f64 ky) #s(literal 3 binary64)) (-.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (*.f64 ky ky))))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))) (*.f64 th th) (*.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (sin ky))
(*.f64 (sin.f64 ky) th)
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(*.f64 (fma.f64 (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 th th) (sin.f64 ky)) th)
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky))) (*.f64 th th) (sin.f64 ky)) th)
th
(* th (+ 1 (* -1/6 (pow th 2))))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)
(+ 1 (* -1/6 (pow th 2)))
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 th th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1/6 binary64))) (*.f64 th th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(/ th (sin kx))
(/.f64 th (sin.f64 kx))
(* th (+ (* -1/6 (/ (pow th 2) (sin kx))) (/ 1 (sin kx))))
(/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx))
(* th (+ (* (pow th 2) (- (* 1/120 (/ (pow th 2) (sin kx))) (* 1/6 (/ 1 (sin kx))))) (/ 1 (sin kx))))
(fma.f64 (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (sin.f64 kx)) (*.f64 th th)) th (/.f64 th (sin.f64 kx)))
(* th (+ (* (pow th 2) (- (* (pow th 2) (+ (* -1/5040 (/ (pow th 2) (sin kx))) (* 1/120 (/ 1 (sin kx))))) (* 1/6 (/ 1 (sin kx))))) (/ 1 (sin kx))))
(fma.f64 (*.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (sin.f64 kx)) (*.f64 th th) (/.f64 #s(literal -1/6 binary64) (sin.f64 kx))) (*.f64 th th)) th (/.f64 th (sin.f64 kx)))
(* (* th (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))
(*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))
(* th (+ (* -1/6 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (*.f64 th th) (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) th)
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (fma.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 (*.f64 th th) (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal -1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky))))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) th)
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* 2 kx)) (cos (* 2 ky))))))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (fma.f64 #s(literal 1/120 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 (*.f64 th th) (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64)))))) (*.f64 th th) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) th)
(* -1/6 (pow th 3))
(*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64)))
(* -1/6 (pow th 2))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
(*.f64 (pow.f64 (neg.f64 th) #s(literal 3 binary64)) (-.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (*.f64 th th))))

rewrite145.0ms (1.3%)

Memory
7.7MiB live, 144.8MiB allocated; 12ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
066396
0111386
1431376
03786357
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
26 → 333
Calls
Call 1
Inputs
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))
(hypot.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (sin.f64 th) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th))
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)
#s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (sin.f64 th) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64))))
(sin.f64 ky)
(/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(sin.f64 th)
(hypot.f64 (sin.f64 kx) (sin.f64 kx))
#s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))
#s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
#s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))
(fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))
Outputs
(*.f64 (pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 1/4 binary64)) (pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (*.f64 #s(literal 2 binary64) (sin.f64 kx))))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (sin.f64 kx)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (fabs.f64 (sin.f64 kx)))
(pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 #s(literal 0 binary64)) (sqrt.f64 #s(literal 0 binary64)))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) #s(literal 0 binary64))))
(/.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (fabs.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (fabs.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))
(fabs.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(fabs.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (sin.f64 kx))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (sin.f64 kx))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 kx))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 kx) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 kx) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 kx) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 kx) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 kx) (sin.f64 kx))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1/4 binary64)))
(pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (fma.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (-.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(hypot.f64 (pow.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (pow.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1 binary64)) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (pow.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1 binary64)) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (pow.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1 binary64)) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (pow.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1 binary64)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (pow.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (pow.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (pow.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (pow.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1 binary64)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(hypot.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (pow.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(hypot.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))) #s(literal 1/2 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (sin.f64 ky)))))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (sin.f64 ky))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (sin.f64 ky)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (sin.f64 ky))))
(neg.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 (hypot.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (sin.f64 ky)))))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) #s(literal -2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 2 binary64))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 th ky)) #s(literal 2 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th))
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)
(*.f64 th #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)))
#s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)
(*.f64 ky (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) ky) (-.f64 (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64)) #s(literal 1 binary64)))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 ky ky) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) ky) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64))))
(/.f64 (*.f64 ky (-.f64 (pow.f64 (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64)) #s(literal 1 binary64)))
(/.f64 (*.f64 ky (fma.f64 (pow.f64 (*.f64 ky ky) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64))) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64))))
(fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64)) ky (*.f64 #s(literal 1 binary64) ky))
(fma.f64 #s(literal 1 binary64) ky (*.f64 (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64)) ky))
(fma.f64 ky (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64)) (*.f64 ky #s(literal 1 binary64)))
(fma.f64 ky #s(literal 1 binary64) (*.f64 ky (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64))))
(+.f64 (*.f64 (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64)) ky) (*.f64 #s(literal 1 binary64) ky))
(+.f64 (*.f64 #s(literal 1 binary64) ky) (*.f64 (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64)) ky))
(+.f64 (*.f64 ky (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64))) (*.f64 ky #s(literal 1 binary64)))
(+.f64 (*.f64 ky #s(literal 1 binary64)) (*.f64 ky (*.f64 (*.f64 ky ky) #s(literal -1/6 binary64))))
(*.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (neg.f64 (neg.f64 (sin.f64 kx))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 kx)))
(/.f64 (sin.f64 th) (sin.f64 kx))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)))
(neg.f64 (/.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(/.f64 (*.f64 (sin.f64 ky) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64))))))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(sin.f64 ky)
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1 binary64)))
(pow.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (neg.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (neg.f64 (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))))
(sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))
(*.f64 (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)) kx)
(*.f64 kx (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) kx) (-.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 1 binary64)))
(/.f64 (*.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 kx kx) #s(literal 3 binary64)) #s(literal 1 binary64)) kx) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64))))
(/.f64 (*.f64 kx (-.f64 (pow.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 1 binary64)))
(/.f64 (*.f64 kx (fma.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 kx kx) #s(literal 3 binary64)) #s(literal 1 binary64))) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64))))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) kx (*.f64 #s(literal 1 binary64) kx))
(fma.f64 #s(literal 1 binary64) kx (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) kx))
(fma.f64 kx (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) (*.f64 kx #s(literal 1 binary64)))
(fma.f64 kx #s(literal 1 binary64) (*.f64 kx (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64))))
(+.f64 (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) kx) (*.f64 #s(literal 1 binary64) kx))
(+.f64 (*.f64 #s(literal 1 binary64) kx) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) kx))
(+.f64 (*.f64 kx (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64))) (*.f64 kx #s(literal 1 binary64)))
(+.f64 (*.f64 kx #s(literal 1 binary64)) (*.f64 kx (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin kx) (*.f64 (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)) kx)) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin kx) (*.f64 (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)) kx)) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 #s(approx (sin kx) (*.f64 (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)) kx)) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 #s(approx (sin kx) (*.f64 (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)) kx)) (sin.f64 ky)))))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (hypot.f64 #s(approx (sin kx) (*.f64 (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)) kx)) (sin.f64 ky))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (hypot.f64 #s(approx (sin kx) (*.f64 (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)) kx)) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 #s(approx (sin kx) (*.f64 (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)) kx)) (sin.f64 ky)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (hypot.f64 #s(approx (sin kx) (*.f64 (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)) kx)) (sin.f64 ky))))
(neg.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 (hypot.f64 #s(approx (sin kx) (*.f64 (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)) kx)) (sin.f64 ky)))))
(sin.f64 th)
(*.f64 (pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 1/4 binary64)) (pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (*.f64 #s(literal 2 binary64) (sin.f64 kx))))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (*.f64 #s(literal 2 binary64) (sin.f64 kx)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 #s(literal 2 binary64)) (fabs.f64 (sin.f64 kx)))
(pow.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 #s(literal 0 binary64)) (sqrt.f64 #s(literal 0 binary64)))
(/.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) #s(literal 0 binary64))))
(/.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (fabs.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (fabs.f64 (sqrt.f64 #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) (sqrt.f64 #s(literal 2 binary64)))
(neg.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))
(fabs.f64 (neg.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64)))))
(fabs.f64 (sqrt.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (sin.f64 kx))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (sin.f64 kx))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 kx))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 kx) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 kx) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 kx) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 kx) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 kx) (sin.f64 kx))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 0 binary64) #s(literal 0 binary64))) #s(literal 1/2 binary64)))
#s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))
#s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 kx kx) #s(literal 2 binary64)) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 kx kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 kx kx) #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 kx kx) #s(literal 2 binary64)) #s(literal 2 binary64)) (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)))) (neg.f64 (+.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (pow.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))) (+.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(/.f64 (-.f64 (pow.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (pow.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) #s(literal 2 binary64))))
(fma.f64 (*.f64 #s(literal 2 binary64) (fabs.f64 kx)) (fabs.f64 kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 (neg.f64 kx) (*.f64 #s(literal -2 binary64) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 (fabs.f64 kx) (*.f64 (fabs.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 (*.f64 #s(literal -2 binary64) kx) (neg.f64 kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal 2 binary64)) #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 (*.f64 kx kx) #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 (*.f64 #s(literal 2 binary64) kx) kx (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 kx kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 #s(literal 2 binary64) (*.f64 (*.f64 kx kx) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 #s(literal 2 binary64) (*.f64 kx kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 kx (*.f64 (*.f64 #s(literal 2 binary64) kx) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 kx (*.f64 #s(literal 2 binary64) kx) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(-.f64 (/.f64 (pow.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (/.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)) (+.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(-.f64 (/.f64 (pow.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) #s(literal 3 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (pow.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (pow.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) #s(literal 2 binary64)))))
(-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(+.f64 (*.f64 (*.f64 kx kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64)))
(+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 kx kx) #s(literal 2 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(*.f64 (pow.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 1/4 binary64)))
(pow.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(exp.f64 (*.f64 (log.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) #s(literal 1/2 binary64)))
#s(approx (sin kx) (*.f64 (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)) kx))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 kx kx) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 1 binary64)))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 kx kx) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)))))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 kx kx) #s(literal 3 binary64)) #s(literal 1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (neg.f64 kx)) (neg.f64 kx) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (fabs.f64 kx)) (fabs.f64 kx) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) kx) (*.f64 kx #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) kx) kx #s(literal 1 binary64))
(fma.f64 (neg.f64 kx) (*.f64 (neg.f64 kx) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 (fabs.f64 kx) (*.f64 (fabs.f64 kx) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 kx kx) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64))
(fma.f64 kx (*.f64 #s(literal -1/6 binary64) kx) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 #s(literal -1/6 binary64) kx)) kx))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 kx kx)) #s(literal -1/6 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/6 binary64) (*.f64 kx kx)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)))))
(+.f64 (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 kx kx) #s(literal -1/6 binary64)))

eval114.0ms (1%)

Memory
-31.3MiB live, 114.1MiB allocated; 12ms collecting garbage
Compiler

Compiled 16 305 to 2 038 computations (87.5% saved)

prune131.0ms (1.2%)

Memory
14.7MiB live, 119.1MiB allocated; 16ms collecting garbage
Pruning

71 alts after pruning (66 fresh and 5 done)

PrunedKeptTotal
New42718445
Fresh74855
Picked325
Done033
Total43771508
Accuracy
100.0%
Counts
508 → 71
Alt Table
Click to see full alt table
StatusAccuracyProgram
70.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))))
55.5%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) kx)) (sqrt.f64 #s(literal 2 binary64)))))
42.9%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
27.4%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
51.6%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
34.1%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
51.0%
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
38.4%
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
38.3%
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
78.0%
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sin.f64 th))
77.9%
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
99.6%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
46.4%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
78.3%
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 ky))
29.1%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
55.2%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
78.3%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
43.6%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
37.8%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
33.2%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 #s(approx (- 1 (cos (* 2 ky))) (*.f64 (*.f64 ky ky) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
46.2%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
29.9%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
30.2%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
19.1%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
25.0%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
38.5%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
32.0%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
55.1%
(*.f64 (/.f64 #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
72.1%
(*.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sin.f64 th))
78.0%
(*.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
28.0%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
15.0%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (*.f64 (sqrt.f64 (neg.f64 (sin.f64 kx))) (sqrt.f64 (neg.f64 (sin.f64 kx)))))) (sin.f64 ky))
12.3%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
29.6%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))
31.3%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))))
32.0%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
28.5%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
8.8%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
43.1%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
91.9%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))) (sin.f64 ky))
20.3%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
17.7%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
18.8%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
17.0%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
23.5%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
21.6%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
19.9%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
17.8%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
19.4%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
34.6%
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
25.2%
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
78.0%
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) (sin.f64 th))
22.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
29.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
26.6%
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
43.8%
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
43.8%
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
77.9%
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
34.4%
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
25.1%
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
24.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
18.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
26.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
29.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
4.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
17.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
10.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
11.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
18.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
11.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
8.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
Compiler

Compiled 5 760 to 2 204 computations (61.7% saved)

regimes381.0ms (3.4%)

Memory
5.2MiB live, 424.3MiB allocated; 41ms collecting garbage
Counts
117 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 ky ky) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 #s(approx (- 1 (cos (* 2 ky))) (*.f64 (*.f64 ky ky) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 (/.f64 #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (*.f64 (sqrt.f64 (neg.f64 (sin.f64 kx))) (sqrt.f64 (neg.f64 (sin.f64 kx)))))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) kx)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 #s(approx (sqrt (sin kx)) (sqrt.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))) (sin.f64 th))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (+.f64 (cosh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))) (sin.f64 ky))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Calls

9 calls:

72.0ms
th
62.0ms
kx
56.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
34.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
33.0ms
(sin.f64 th)
Results
AccuracySegmentsBranch
99.7%1(sin.f64 th)
99.7%1(sin.f64 kx)
99.7%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
99.7%1(sin.f64 ky)
99.7%1(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
99.7%1(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
99.7%1kx
99.7%1ky
99.7%1th
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes260.0ms (2.3%)

Memory
22.7MiB live, 448.4MiB allocated; 43ms collecting garbage
Counts
92 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 ky ky) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 #s(approx (- 1 (cos (* 2 ky))) (*.f64 (*.f64 ky ky) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 (/.f64 #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (*.f64 (sqrt.f64 (neg.f64 (sin.f64 kx))) (sqrt.f64 (neg.f64 (sin.f64 kx)))))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) kx)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th))
Calls

9 calls:

51.0ms
(sin.f64 th)
29.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
27.0ms
kx
26.0ms
(sin.f64 ky)
26.0ms
ky
Results
AccuracySegmentsBranch
89.8%3(sin.f64 th)
95.4%3(sin.f64 kx)
95.4%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
99.4%3(sin.f64 ky)
99.5%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
84.1%2(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
95.4%2kx
99.4%2ky
89.8%2th
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes56.0ms (0.5%)

Memory
9.1MiB live, 54.9MiB allocated; 3ms collecting garbage
Counts
88 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 ky ky) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 #s(approx (- 1 (cos (* 2 ky))) (*.f64 (*.f64 ky ky) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 (/.f64 #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (*.f64 (sqrt.f64 (neg.f64 (sin.f64 kx))) (sqrt.f64 (neg.f64 (sin.f64 kx)))))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) kx)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) (sin.f64 th))
Calls

1 calls:

51.0ms
ky
Results
AccuracySegmentsBranch
99.2%2ky
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes33.0ms (0.3%)

Memory
-40.6MiB live, 54.3MiB allocated; 9ms collecting garbage
Counts
86 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 ky ky) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 #s(approx (- 1 (cos (* 2 ky))) (*.f64 (*.f64 ky ky) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 (/.f64 #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (*.f64 (sqrt.f64 (neg.f64 (sin.f64 kx))) (sqrt.f64 (neg.f64 (sin.f64 kx)))))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) kx)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sin.f64 th))
Calls

1 calls:

21.0ms
ky
Results
AccuracySegmentsBranch
99.2%2ky
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes28.0ms (0.2%)

Memory
10.4MiB live, 54.7MiB allocated; 4ms collecting garbage
Counts
84 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 ky ky) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 #s(approx (- 1 (cos (* 2 ky))) (*.f64 (*.f64 ky ky) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 (/.f64 #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (*.f64 (sqrt.f64 (neg.f64 (sin.f64 kx))) (sqrt.f64 (neg.f64 (sin.f64 kx)))))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) kx)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
Calls

1 calls:

21.0ms
ky
Results
AccuracySegmentsBranch
99.2%2ky
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes650.0ms (5.8%)

Memory
-60.0MiB live, 429.5MiB allocated; 810ms collecting garbage
Counts
82 → 6
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 ky ky) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 #s(approx (- 1 (cos (* 2 ky))) (*.f64 (*.f64 ky ky) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 (/.f64 #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (*.f64 (sqrt.f64 (neg.f64 (sin.f64 kx))) (sqrt.f64 (neg.f64 (sin.f64 kx)))))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin kx) (sin kx)))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) kx)) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
Outputs
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
Calls

9 calls:

410.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
53.0ms
th
36.0ms
(sin.f64 th)
26.0ms
(sin.f64 kx)
23.0ms
kx
Results
AccuracySegmentsBranch
72.6%4(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
79.1%4(sin.f64 th)
80.8%3th
75.3%3(sin.f64 kx)
88.7%6(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
75.2%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
75.2%2kx
80.9%4(sin.f64 ky)
78.6%2ky
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes47.0ms (0.4%)

Memory
0.1MiB live, 49.4MiB allocated; 33ms collecting garbage
Counts
75 → 6
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 ky ky) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 #s(approx (- 1 (cos (* 2 ky))) (*.f64 (*.f64 ky ky) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 (/.f64 #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
Calls

1 calls:

18.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
88.5%6(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes24.0ms (0.2%)

Memory
2.0MiB live, 50.1MiB allocated; 4ms collecting garbage
Counts
72 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 ky ky) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 #s(approx (- 1 (cos (* 2 ky))) (*.f64 (*.f64 ky ky) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 (/.f64 #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

20.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
84.9%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes21.0ms (0.2%)

Memory
-2.7MiB live, 43.5MiB allocated; 2ms collecting garbage
Counts
65 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 ky ky) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 #s(approx (- 1 (cos (* 2 ky))) (*.f64 (*.f64 ky ky) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

16.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
84.8%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes21.0ms (0.2%)

Memory
0.2MiB live, 46.3MiB allocated; 3ms collecting garbage
Counts
64 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 ky ky) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 #s(approx (- 1 (cos (* 2 ky))) (*.f64 (*.f64 ky ky) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

15.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
84.8%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes19.0ms (0.2%)

Memory
43.6MiB live, 43.6MiB allocated; 0ms collecting garbage
Counts
63 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 ky ky) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 #s(approx (- 1 (cos (* 2 ky))) (*.f64 (*.f64 ky ky) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

15.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
84.8%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes21.0ms (0.2%)

Memory
-8.4MiB live, 40.5MiB allocated; 6ms collecting garbage
Counts
56 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

14.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
84.8%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes156.0ms (1.4%)

Memory
-6.7MiB live, 225.6MiB allocated; 21ms collecting garbage
Counts
55 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

7 calls:

42.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
33.0ms
(sin.f64 th)
18.0ms
ky
15.0ms
th
15.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
58.7%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
58.7%2kx
53.6%3(sin.f64 th)
70.0%3(sin.f64 ky)
69.7%2ky
53.6%2th
75.7%3(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 24 to 34 computations (-41.7% saved)

regimes22.0ms (0.2%)

Memory
-6.8MiB live, 35.4MiB allocated; 12ms collecting garbage
Counts
53 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
Outputs
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

19.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
75.7%3(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes83.0ms (0.7%)

Memory
-1.5MiB live, 142.0MiB allocated; 31ms collecting garbage
Counts
48 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (/.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (*.f64 kx (sin.f64 th))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) #s(approx (* (+ (* (* ky ky) -1/6) 1) ky) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))) (sin.f64 th)))
Outputs
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

5 calls:

19.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
18.0ms
(sin.f64 kx)
18.0ms
(sin.f64 ky)
13.0ms
ky
12.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
62.6%3(sin.f64 ky)
50.9%3(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
55.0%2ky
57.9%4(sin.f64 kx)
69.9%3(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 34 to 35 computations (-2.9% saved)

regimes13.0ms (0.1%)

Memory
38.1MiB live, 38.1MiB allocated; 0ms collecting garbage
Counts
42 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
Outputs
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

10.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
61.9%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes129.0ms (1.1%)

Memory
-32.5MiB live, 172.8MiB allocated; 16ms collecting garbage
Counts
37 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
Outputs
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
Calls

7 calls:

45.0ms
(sin.f64 ky)
28.0ms
kx
12.0ms
(sin.f64 kx)
10.0ms
ky
9.0ms
th
Results
AccuracySegmentsBranch
37.3%4th
53.6%3(sin.f64 kx)
47.5%3ky
52.0%3kx
52.0%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
49.0%3(sin.f64 ky)
51.7%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 24 to 34 computations (-41.7% saved)

regimes14.0ms (0.1%)

Memory
-22.0MiB live, 22.9MiB allocated; 4ms collecting garbage
Counts
35 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
Outputs
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
Calls

1 calls:

10.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
53.6%3(sin.f64 kx)
Compiler

Compiled 2 to 4 computations (-100% saved)

regimes29.0ms (0.3%)

Memory
17.3MiB live, 63.6MiB allocated; 2ms collecting garbage
Counts
34 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 (*.f64 kx kx) #s(literal 2 binary64))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) #s(approx (- (+ (* (* kx kx) 2) 1) (cos (* -2 ky))) (*.f64 #s(literal 2 binary64) (fma.f64 ky ky (*.f64 kx kx)))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
Outputs
(*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

3 calls:

9.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
9.0ms
(sin.f64 kx)
9.0ms
(sin.f64 th)
Results
AccuracySegmentsBranch
52.6%3(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
34.1%3(sin.f64 th)
50.9%3(sin.f64 kx)
Compiler

Compiled 17 to 19 computations (-11.8% saved)

regimes9.0ms (0.1%)

Memory
20.9MiB live, 20.9MiB allocated; 0ms collecting garbage
Counts
30 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
Outputs
#s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

7.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
52.6%3(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes27.0ms (0.2%)

Memory
-8.3MiB live, 44.2MiB allocated; 4ms collecting garbage
Counts
29 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 ky))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 #s(approx (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) kx) ky) (/.f64 (sin.f64 th) ky))) kx (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (*.f64 (fma.f64 #s(literal 1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) (*.f64 ky ky))) (sin.f64 th)))
Outputs
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

3 calls:

10.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
8.0ms
kx
7.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Results
AccuracySegmentsBranch
42.2%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
42.2%2kx
50.1%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 18 to 20 computations (-11.1% saved)

regimes10.0ms (0.1%)

Memory
-28.5MiB live, 17.6MiB allocated; 2ms collecting garbage
Counts
25 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (fma.f64 (*.f64 th #s(literal -1/2 binary64)) (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (*.f64 #s(approx (/ (sin th) (pow (sin ky) 2)) (/.f64 (sin.f64 th) (*.f64 ky ky))) (*.f64 #s(literal -1/2 binary64) kx)) kx (sin.f64 th)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (*.f64 (/.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 kx)) th))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) (sin.f64 ky))
Outputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

8.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
50.0%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes6.0ms (0.1%)

Memory
13.1MiB live, 13.1MiB allocated; 0ms collecting garbage
Counts
17 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

5.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
49.5%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes25.0ms (0.2%)

Memory
3.9MiB live, 49.9MiB allocated; 3ms collecting garbage
Counts
15 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* -1/2 (* kx kx)) (/ (sin th) (pow (sin ky) 2))) (sin th)) (*.f64 (/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) ky) (/.f64 (sin.f64 th) ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (+ (* (* (/ (sin th) (pow (sin ky) 2)) (* -1/2 kx)) kx) (sin th)) (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) ky) (/.f64 (sin.f64 th) ky))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
Outputs
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

5 calls:

6.0ms
(sin.f64 ky)
4.0ms
(sin.f64 kx)
4.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
4.0ms
ky
4.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
41.1%2ky
41.2%2(sin.f64 ky)
38.3%3(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
37.1%4(sin.f64 kx)
43.3%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 34 to 35 computations (-2.9% saved)

regimes19.0ms (0.2%)

Memory
7.9MiB live, 52.9MiB allocated; 2ms collecting garbage
Counts
10 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
Outputs
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

5 calls:

6.0ms
(sin.f64 ky)
3.0ms
ky
3.0ms
kx
3.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
3.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Results
AccuracySegmentsBranch
36.1%2ky
35.9%2(sin.f64 ky)
34.8%2kx
34.8%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
40.0%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 21 to 27 computations (-28.6% saved)

regimes15.0ms (0.1%)

Memory
-19.3MiB live, 34.5MiB allocated; 4ms collecting garbage
Counts
9 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

4 calls:

5.0ms
ky
3.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
3.0ms
(sin.f64 ky)
3.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
33.0%2(sin.f64 ky)
32.6%2ky
35.9%3(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
35.4%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 32 to 31 computations (3.1% saved)

regimes23.0ms (0.2%)

Memory
2.6MiB live, 48.7MiB allocated; 3ms collecting garbage
Counts
6 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
Calls

9 calls:

4.0ms
(sin.f64 ky)
2.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
2.0ms
(sin.f64 th)
2.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
2.0ms
ky
Results
AccuracySegmentsBranch
20.8%2(sin.f64 th)
23.5%2ky
23.8%2(sin.f64 ky)
22.7%3(sin.f64 kx)
20.7%2th
25.4%2(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
22.5%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
22.5%2kx
24.7%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes10.0ms (0.1%)

Memory
26.8MiB live, 26.8MiB allocated; 0ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
Calls

9 calls:

1.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
1.0ms
(sin.f64 kx)
1.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
1.0ms
(sin.f64 ky)
1.0ms
(sin.f64 th)
Results
AccuracySegmentsBranch
18.1%1th
18.1%1(sin.f64 th)
18.1%1(sin.f64 kx)
18.1%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
18.1%1kx
18.1%1ky
18.1%1(sin.f64 ky)
18.1%1(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
18.1%1(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Compiler

Compiled 42 to 51 computations (-21.4% saved)

bsearch29.0ms (0.3%)

Memory
-1.8MiB live, 45.0MiB allocated; 1ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
26.0ms
1.5364782551770818e-6
647041.0587210883
Samples
19.0ms160×0valid
Compiler

Compiled 469 to 388 computations (17.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-sin: 7.0ms (49% of total)
ival-pow2: 3.0ms (21% of total)
ival-div: 1.0ms (7% of total)
ival-add: 1.0ms (7% of total)
ival-mult: 1.0ms (7% of total)
ival-sqrt: 1.0ms (7% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

bsearch2.0ms (0%)

Memory
3.6MiB live, 3.6MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
2.0ms
1.5364782551770818e-6
647041.0587210883
Compiler

Compiled 659 to 548 computations (16.8% saved)

bsearch2.0ms (0%)

Memory
3.1MiB live, 3.1MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
2.0ms
1.5364782551770818e-6
647041.0587210883
Compiler

Compiled 449 to 398 computations (11.4% saved)

bsearch2.0ms (0%)

Memory
4.0MiB live, 4.0MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
2.0ms
1.5364782551770818e-6
647041.0587210883
Compiler

Compiled 449 to 398 computations (11.4% saved)

bsearch3.0ms (0%)

Memory
-43.1MiB live, 3.4MiB allocated; 3ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
+inf
0.0ms
0.9501989848278225
0.9676915829894932
0.0ms
0.14930942233095623
0.1771655952724653
0.0ms
-0.05921514779673524
1.2701286482275375e-297
0.0ms
-0.9999890242859591
-0.9986132916806295
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
3.8MiB live, 3.8MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
+inf
0.0ms
0.9501989848278225
0.9676915829894932
0.0ms
0.14930942233095623
0.1771655952724653
0.0ms
-0.05921514779673524
1.2701286482275375e-297
0.0ms
-0.9999890242859591
-0.9986132916806295
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9501989848278225
0.9676915829894932
0.0ms
0.14930942233095623
0.1771655952724653
0.0ms
-0.05921514779673524
1.2701286482275375e-297
0.0ms
-0.9999890242859591
-0.9986132916806295
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.6MiB live, 1.6MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9501989848278225
0.9676915829894932
0.0ms
0.14930942233095623
0.1771655952724653
0.0ms
-0.05921514779673524
1.2701286482275375e-297
0.0ms
-0.9999890242859591
-0.9986132916806295
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9501989848278225
0.9676915829894932
0.0ms
0.14930942233095623
0.1771655952724653
0.0ms
-0.05921514779673524
1.2701286482275375e-297
0.0ms
-0.9999890242859591
-0.9986132916806295
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9501989848278225
0.9676915829894932
0.0ms
0.14930942233095623
0.1771655952724653
0.0ms
-0.05921514779673524
1.2701286482275375e-297
0.0ms
-0.9999890242859591
-0.9986132916806295
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9501989848278225
0.9676915829894932
0.0ms
0.14930942233095623
0.1771655952724653
0.0ms
-0.05921514779673524
1.2701286482275375e-297
0.0ms
-0.9999890242859591
-0.9986132916806295
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.7050065364703877
0.7104497059141874
0.0ms
-0.9999890242859591
-0.9986132916806295
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.9MiB live, 1.9MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.7050065364703877
0.7104497059141874
0.0ms
-0.709427859714556
-0.7063479390197789
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.2MiB live, 2.2MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.7050065364703877
0.7104497059141874
0.0ms
-0.999999996186274
-0.9999890242859591
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.7050065364703877
0.7104497059141874
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.3MiB live, 2.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.9963640939229056e-125
5.208697976297108e-124
0.0ms
-0.12937268800560542
-0.0495474654442743
Compiler

Compiled 19 to 18 computations (5.3% saved)

bsearch1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.9963640939229056e-125
5.208697976297108e-124
0.0ms
-0.12937268800560542
-0.0495474654442743
Compiler

Compiled 19 to 18 computations (5.3% saved)

bsearch1.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.138697254603513e-7
1.1876372662223315e-5
0.0ms
2.0085482040660292e-165
5.4406767332314794e-164
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.138697254603513e-7
1.1876372662223315e-5
0.0ms
2.0085482040660292e-165
5.4406767332314794e-164
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.138697254603513e-7
1.1876372662223315e-5
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.138697254603513e-7
1.1876372662223315e-5
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.138697254603513e-7
1.1876372662223315e-5
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.138697254603513e-7
1.1876372662223315e-5
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0372725207792203e-21
1.9715061262230728e-14
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch15.0ms (0.1%)

Memory
21.4MiB live, 21.4MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
13.0ms
1.0372725207792203e-21
1.9715061262230728e-14
Samples
8.0ms144×0valid
Compiler

Compiled 505 to 397 computations (21.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0ms
ival-sin: 3.0ms (68.8% of total)
ival-mult: 1.0ms (22.9% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.481384063713568e-291
5.058286712327106e-286
Compiler

Compiled 19 to 19 computations (0% saved)

simplify80.0ms (0.7%)

Memory
-13.6MiB live, 82.0MiB allocated; 8ms collecting garbage
Algorithm
egg-herbie
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02653004
13393004
24822972
37372972
411532972
520712972
641172972
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(if (<=.f64 ky #s(literal 7378697629483821/2305843009213693952 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 7378697629483821/2305843009213693952 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th)) (*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 7378697629483821/2305843009213693952 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th)) (*.f64 (/.f64 (*.f64 (sin.f64 ky) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 7378697629483821/2305843009213693952 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th)) (*.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th)))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th)))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 799388933858263/1125899906842624 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3188548536178311/4503599627370496 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 799388933858263/1125899906842624 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -9007109182748445/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 799388933858263/1125899906842624 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 799388933858263/1125899906842624 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (sin.f64 kx) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64))))) (if (<=.f64 (sin.f64 kx) #s(literal 4763410263543689/95268205270873786358080970147496530326800480428008152797215483387004752771599292606210513399154418065180265231976520474104247304665780191232 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))))
(if (<=.f64 (sin.f64 kx) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64))))) (if (<=.f64 (sin.f64 kx) #s(literal 4763410263543689/95268205270873786358080970147496530326800480428008152797215483387004752771599292606210513399154418065180265231976520474104247304665780191232 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4149515568880993/1037378892220248239628101965922790287753111558060609224998914332422663202853227036599926762236775948572049471652825197295598787768852943826971718708528490921765295450850377380921344 binary64)) (*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4149515568880993/1037378892220248239628101965922790287753111558060609224998914332422663202853227036599926762236775948572049471652825197295598787768852943826971718708528490921765295450850377380921344 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5316911983139663/2658455991569831745807614120560689152 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1412304745521473/166153499473114484112975882535043072 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) #s(literal 3511119404027961/702223880805592151456759840151962786569522257399338504974336254522393264865238137237142489540654437582500444843247630303354647534431314931612685275935445798350655833690880801860555545317367555154113605281582053784524026102900245630757473088050106395169337932361665227499793929447186391815763110662594625536 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(if (<=.f64 ky #s(literal 7378697629483821/2305843009213693952 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 7378697629483821/2305843009213693952 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th)) (*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 7378697629483821/2305843009213693952 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th)) (*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (pow.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 7378697629483821/2305843009213693952 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th)) (*.f64 (/.f64 (*.f64 (sin.f64 ky) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 7378697629483821/2305843009213693952 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th)) (*.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (sqrt.f64 #s(literal 2 binary64))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th)))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th)))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th)))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th)))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (pow.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(approx (- 1 (cos (* 2 kx))) (*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (pow.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (pow.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal -1 binary64))))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (pow.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (pow.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal -1 binary64))))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (pow.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/36028797018963968 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/1125899906842624 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (pow.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 799388933858263/1125899906842624 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -8998192055486251/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (/.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx)))) (-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 799388933858263/1125899906842624 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3188548536178311/4503599627370496 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 799388933858263/1125899906842624 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3188548536178311/4503599627370496 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 799388933858263/1125899906842624 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -9007109182748445/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 799388933858263/1125899906842624 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -9007109182748445/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 799388933858263/1125899906842624 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 799388933858263/1125899906842624 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 799388933858263/1125899906842624 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (fabs.f64 (sin.f64 kx)))) (sin.f64 ky)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th)))
(if (<=.f64 (sin.f64 kx) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64))))) (if (<=.f64 (sin.f64 kx) #s(literal 4763410263543689/95268205270873786358080970147496530326800480428008152797215483387004752771599292606210513399154418065180265231976520474104247304665780191232 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))))
(if (<=.f64 (sin.f64 kx) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal -1 binary64))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64))))) (if (<=.f64 (sin.f64 kx) #s(literal 4763410263543689/95268205270873786358080970147496530326800480428008152797215483387004752771599292606210513399154418065180265231976520474104247304665780191232 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))))
(if (<=.f64 (sin.f64 kx) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64))))) (if (<=.f64 (sin.f64 kx) #s(literal 4763410263543689/95268205270873786358080970147496530326800480428008152797215483387004752771599292606210513399154418065180265231976520474104247304665780191232 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))))
(if (<=.f64 (sin.f64 kx) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal -1 binary64))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64))))) (if (<=.f64 (sin.f64 kx) #s(literal 4763410263543689/95268205270873786358080970147496530326800480428008152797215483387004752771599292606210513399154418065180265231976520474104247304665780191232 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4149515568880993/1037378892220248239628101965922790287753111558060609224998914332422663202853227036599926762236775948572049471652825197295598787768852943826971718708528490921765295450850377380921344 binary64)) (*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4149515568880993/1037378892220248239628101965922790287753111558060609224998914332422663202853227036599926762236775948572049471652825197295598787768852943826971718708528490921765295450850377380921344 binary64)) (*.f64 #s(approx (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) ky) (sqrt.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal -1 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4149515568880993/1037378892220248239628101965922790287753111558060609224998914332422663202853227036599926762236775948572049471652825197295598787768852943826971718708528490921765295450850377380921344 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4149515568880993/1037378892220248239628101965922790287753111558060609224998914332422663202853227036599926762236775948572049471652825197295598787768852943826971718708528490921765295450850377380921344 binary64)) #s(approx (* (/ (sin ky) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* 2 kx))))) (sqrt 2))) (sin th)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal -1 binary64))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/9444732965739290427392 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 (sin.f64 th) kx))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5316911983139663/2658455991569831745807614120560689152 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5316911983139663/2658455991569831745807614120560689152 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (/ (sin th) (sin kx)) (/.f64 th (sin.f64 kx)))) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1412304745521473/166153499473114484112975882535043072 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1412304745521473/166153499473114484112975882535043072 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th)))
(if (<=.f64 (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) #s(literal 3511119404027961/702223880805592151456759840151962786569522257399338504974336254522393264865238137237142489540654437582500444843247630303354647534431314931612685275935445798350655833690880801860555545317367555154113605281582053784524026102900245630757473088050106395169337932361665227499793929447186391815763110662594625536 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th))))
(if (<=.f64 (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) #s(literal 3511119404027961/702223880805592151456759840151962786569522257399338504974336254522393264865238137237142489540654437582500444843247630303354647534431314931612685275935445798350655833690880801860555545317367555154113605281582053784524026102900245630757473088050106395169337932361665227499793929447186391815763110662594625536 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) #s(literal 1 binary64)) th)))

derivations1.8s (16%)

Memory
31.1MiB live, 1 199.5MiB allocated; 134ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
066396
0111386
1431376
03786357
035170
061148
1208148
21491148
08289148
01349
02249
15949
231949
3312949
0893734
07955121
129424796
277304583
081404376
09385787
135505419
085985175
05282568
119172410
085392273
053280
090245
1298245
22268234
09857234
03171402
111341336
252361308
084061228
Stop Event
fuel
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
iter limit
iter limit
node limit
iter limit
Compiler

Compiled 3 086 to 268 computations (91.3% saved)

preprocess211.0ms (1.9%)

Memory
-8.6MiB live, 313.3MiB allocated; 46ms collecting garbage
Remove

(negabs ky)

(negabs th)

(abs kx)

Compiler

Compiled 6 336 to 670 computations (89.4% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...