Toniolo and Linder, Equation (3b), real

Time bar (total: 11.3s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze240.0ms (2.1%)

Memory
-26.8MiB live, 255.1MiB allocated
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)

sample2.0s (18.2%)

Memory
64.6MiB live, 1 728.2MiB allocated
Samples
1.6s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.3s
ival-sin: 768.0ms (60.9% of total)
ival-pow2: 218.0ms (17.3% of total)
ival-div: 81.0ms (6.4% of total)
ival-mult: 77.0ms (6.1% of total)
ival-sqrt: 69.0ms (5.5% of total)
ival-add: 38.0ms (3% of total)
ival-true: 7.0ms (0.6% of total)
ival-assert: 4.0ms (0.3% of total)
Bogosity

explain213.0ms (1.9%)

Memory
-10.3MiB live, 395.1MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
170-3(2.280452877081293e-160 -9.159567843576508e-236 -1.1253567195824171e+300)(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-rescue140
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))underflow56
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))underflow72
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))underflow14
Confusion
Predicted +Predicted -
+143
-0239
Precision
1.0
Recall
0.8235294117647058
Confusion?
Predicted +Predicted MaybePredicted -
+1403
-00239
Precision?
1.0
Recall?
0.8235294117647058
Freqs
test
numberfreq
0242
114
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
101.0ms512×0valid
Compiler

Compiled 152 to 43 computations (71.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 64.0ms
ival-sin: 41.0ms (63.6% of total)
ival-pow2: 10.0ms (15.5% of total)
ival-sqrt: 4.0ms (6.2% of total)
ival-div: 3.0ms (4.7% of total)
ival-mult: 3.0ms (4.7% of total)
ival-add: 2.0ms (3.1% of total)
ival-true: 1.0ms (1.6% of total)
ival-assert: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

preprocess74.0ms (0.7%)

Memory
17.7MiB live, 56.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045153
1101147
2211147
3383147
4845147
51976147
62541147
72802147
82914147
92966147
102981147
112981147
01316
02216
12816
23216
33316
03311
Stop Event
iter limit
saturated
iter limit
saturated
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.2MiB live, 0.2MiB allocated
Compiler

Compiled 0 to 3 computations (-∞% saved)

prune1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.7%
(*.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)

simplify3.0ms (0%)

Memory
7.1MiB live, 7.1MiB allocated
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
12866
23266
33366
03351
Stop Event
iter limit
saturated
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

localize59.0ms (0.5%)

Memory
-2.4MiB live, 151.8MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.20703125
(/.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)))))
accuracy0.24837875976844204
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy0.26171875
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy3.776551461592394
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
Samples
46.0ms256×0valid
Compiler

Compiled 68 to 15 computations (77.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 33.0ms
ival-sin: 18.0ms (55.3% of total)
ival-pow2: 5.0ms (15.4% of total)
ival-mult: 3.0ms (9.2% of total)
ival-sqrt: 3.0ms (9.2% of total)
ival-div: 2.0ms (6.1% of total)
ival-add: 1.0ms (3.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series38.0ms (0.3%)

Memory
-14.8MiB live, 79.9MiB allocated
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 kx) #s(literal 2 binary64))
(pow.f64 (sin.f64 ky) #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
9.0ms
ky
@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 kx) 2) (pow (sin ky) 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 kx) 2) (pow (sin ky) 2))
5.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 kx) 2) (pow (sin ky) 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 kx) 2) (pow (sin ky) 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 kx) 2) (pow (sin ky) 2))

simplify253.0ms (2.2%)

Memory
-11.3MiB live, 216.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03171402
110111353
238651261
378121261
081151188
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 (fma.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (*.f64 kx (/.f64 kx (sin.f64 ky))) (/.f64 #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)) (fma.f64 (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx (/.f64 kx (sin.f64 ky)))) #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 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 (sin.f64 th) #s(literal -1/2 binary64)) (*.f64 kx (/.f64 kx (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 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.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 (sin.f64 th) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.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 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (*.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)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.f64 (+.f64 (+.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)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th))))) (fma.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (*.f64 kx (/.f64 kx (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 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 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 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))) (/.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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (+.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)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (+.f64 (+.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)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 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))
(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)) (fma.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)) (fma.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 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 (fma.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (*.f64 ky (/.f64 ky (sin.f64 kx))) (/.f64 #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)) (fma.f64 (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (*.f64 ky (/.f64 ky (sin.f64 kx)))) #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 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))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.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))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (*.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (*.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 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.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))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (fma.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)))) #s(literal -1/12 binary64) (*.f64 (+.f64 (+.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 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 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 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/5040 binary64) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (*.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (*.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 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 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))))
(fma.f64 (neg.f64 (pow.f64 ky #s(literal 3 binary64))) (+.f64 (/.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/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)) (fma.f64 (+.f64 (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (+.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)))) (/.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/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)) (fma.f64 (fma.f64 (fma.f64 (sin.f64 kx) (fma.f64 #s(literal -1/12 binary64) (+.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)))) (*.f64 #s(literal -1/2 binary64) (+.f64 (+.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 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 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) (+.f64 (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (+.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)))) (/.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/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)) (fma.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)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64)) (*.f64 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)) (fma.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)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64)) (*.f64 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))))) th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (sin.f64 ky)))
(* 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 th th)) (*.f64 (sin.f64 ky) (fma.f64 #s(literal 1/120 binary64) (*.f64 th th) #s(literal -1/6 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))))) (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 (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))))) (*.f64 (sin.f64 ky) (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 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))))) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (sin.f64 ky)))) th)

rewrite211.0ms (1.9%)

Memory
10.1MiB live, 207.8MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01349
02249
16249
234449
3297849
0826034
Stop Event
iter limit
node limit
iter limit
Counts
6 → 299
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 kx) #s(literal 2 binary64))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
Outputs
(*.f64 (sqrt.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))))) (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 (+.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))))) (sqrt.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))))))
(*.f64 (sqrt.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))))) (sqrt.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)))))
(*.f64 (sqrt.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)))) (sqrt.f64 (+.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (sqrt.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))))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/4 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 (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/4 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)) (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 (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)) (sqrt.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))))))
(*.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)) (sqrt.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)))))
(*.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)) (sqrt.f64 (+.f64 (sin.f64 ky) (sin.f64 kx))))
(*.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 (pow.f64 #s(literal 1 binary64) #s(literal 1/2 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/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 (pow.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1 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))))) (pow.f64 (pow.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1 binary64)) #s(literal 1/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 (pow.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)))) #s(literal -1 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))))) (pow.f64 (pow.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)))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))))
(*.f64 (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)) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 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)) (/.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 1 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 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 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)))) (sqrt.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))))))
(*.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)))) (sqrt.f64 (*.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 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 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 (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))) (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 binary64))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 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 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.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))))))
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 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)))
(*.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))) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #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 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 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 1 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 (sqrt.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (+.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (-.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)))) (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)))) (sqrt.f64 (+.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 4 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 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 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 18 binary64)) (pow.f64 (sin.f64 kx) #s(literal 18 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 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) #s(literal 1 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 (sqrt.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.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 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.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 (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 (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 (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 (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 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 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))))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 18 binary64)) (pow.f64 (sin.f64 kx) #s(literal 18 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 6 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))))))
(/.f64 (sqrt.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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 (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 ky #s(literal 2 binary64))))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.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 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 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64)))) (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (+.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64)))) (sqrt.f64 (*.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 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 9 binary64)) (pow.f64 (sin.f64 ky) #s(literal 9 binary64))) (sqrt.f64 (*.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 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 6 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64)))) (sqrt.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 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 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 (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 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)))) (*.f64 #s(literal 1 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 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))) (*.f64 #s(literal 1 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 (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 #s(literal 1 binary64) (sqrt.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 1 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))))
(-.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (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)) (sin.f64 ky))
(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)) (sin.f64 kx))
(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))
(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) (sin.f64 ky))
(exp.f64 (neg.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
(exp.f64 (neg.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64))))
(exp.f64 (neg.f64 (*.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 (fma.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/4 binary64) (*.f64 (log.f64 (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 (*.f64 (log.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 (*.f64 (log.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #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 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky)))) #s(literal -1 binary64)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (/.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)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (/.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)) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.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)) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (/.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)) (sin.f64 th)) #s(literal -1 binary64)))
(*.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) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (neg.f64 (sin.f64 ky)))
(*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.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 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.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 (sin.f64 th) (sin.f64 ky))) #s(literal -1 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 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (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 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.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))))
(pow.f64 (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(literal -1 binary64)) (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 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal -1 binary64) (sin.f64 th)) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))
(/.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(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)))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.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)) (sqrt.f64 (sin.f64 ky))) #s(literal -1 binary64)) (pow.f64 (/.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)) (sqrt.f64 (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.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 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))
(*.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) #s(literal -1/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 (/.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 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (*.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 (sin.f64 ky) #s(literal -1 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.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)) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 ky))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1 binary64))
(*.f64 (sin.f64 ky) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(pow.f64 (*.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.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))) #s(literal 2 binary64))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) #s(literal -1 binary64))
(pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1 binary64))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (/.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (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 #s(literal -1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.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 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))
(neg.f64 (*.f64 #s(literal 1 binary64) (/.f64 (neg.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))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(exp.f64 (-.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (neg.f64 (log.f64 (sin.f64 ky)))))
(exp.f64 (-.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64)) (neg.f64 (log.f64 (sin.f64 ky)))))
(exp.f64 (-.f64 (*.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)) (neg.f64 (log.f64 (sin.f64 ky)))))
(exp.f64 (neg.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))
(exp.f64 (+.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (log.f64 (sin.f64 ky))))
(exp.f64 (fma.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64) (log.f64 (sin.f64 ky))))
(exp.f64 (fma.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) (log.f64 (sin.f64 ky))))
(exp.f64 (+.f64 (log.f64 (sin.f64 ky)) (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
(exp.f64 (+.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64))))
(exp.f64 (+.f64 (log.f64 (sin.f64 ky)) (*.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 (sin.f64 ky)) (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (sin.f64 ky)))
(*.f64 #s(literal -1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 ky)))
(*.f64 #s(literal 1 binary64) (sin.f64 ky))
(*.f64 (sin.f64 ky) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal 1 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky))))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #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 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(neg.f64 (neg.f64 (sin.f64 ky)))
(sin.f64 ky)
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(-.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 ky)))
(exp.f64 (neg.f64 (neg.f64 (log.f64 (sin.f64 ky)))))
(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 (*.f64 (neg.f64 (log.f64 (sin.f64 ky))) #s(literal -1 binary64)))
(exp.f64 (log.f64 (sin.f64 ky)))
(*.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 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 3/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 kx)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 3/2 binary64)) (sqrt.f64 (sin.f64 kx)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 3/2 binary64)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal 3/2 binary64)))
(*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/2 binary64))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 #s(literal 1 binary64)) (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -1 binary64))
(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 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) #s(literal 1/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 (exp.f64 (log1p.f64 (neg.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (exp.f64 (log.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.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))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 kx) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))))
(/.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) (+.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 (neg.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) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(-.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)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 4 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal 2 binary64))) (log.f64 (sin.f64 kx))))
(exp.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.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) kx))))
(+.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))
(*.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.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 (sin.f64 ky) #s(literal 3/2 binary64)) (sqrt.f64 (sin.f64 ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)))
(*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64))
(*.f64 (sin.f64 ky) (sin.f64 ky))
(pow.f64 (exp.f64 #s(literal 1 binary64)) (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64))))) #s(literal -1 binary64))
(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 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) #s(literal 1/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 (exp.f64 (log1p.f64 (neg.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64)))))) (exp.f64 (log.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))))
(/.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) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64))))) #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) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64))))))
(-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(-.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 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/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 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky)))
(+.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) (neg.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64))))

eval66.0ms (0.6%)

Memory
25.4MiB live, 145.4MiB allocated
Compiler

Compiled 9 472 to 1 772 computations (81.3% saved)

prune68.0ms (0.6%)

Memory
-49.4MiB live, 76.9MiB allocated
Pruning

22 alts after pruning (22 fresh and 0 done)

PrunedKeptTotal
New34822370
Fresh000
Picked101
Done000
Total34922371
Accuracy
100.0%
Counts
371 → 22
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.4%
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
97.4%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
99.6%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
99.4%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
99.5%
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
99.4%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
75.9%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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))
84.8%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
51.7%
(*.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))
85.1%
(*.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))
46.1%
(*.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))
31.7%
(*.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.7%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
85.6%
(*.f64 (*.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))))) (sin.f64 th))
99.5%
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
75.9%
(*.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sin.f64 th))
97.4%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
18.5%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (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))
30.6%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
93.0%
(*.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))
43.4%
#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)))))))
25.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Compiler

Compiled 870 to 676 computations (22.3% saved)

simplify81.0ms (0.7%)

Memory
-9.4MiB live, 30.0MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
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-diff2
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
cost-diff0
(sin.f64 ky)
cost-diff0
(neg.f64 (sin.f64 ky))
cost-diff0
(*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))
cost-diff3
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
cost-diff0
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.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)))))
cost-diff0
(*.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))
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
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
cost-diff0
(sin.f64 th)
cost-diff0
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
035229
058219
182219
2127219
3225219
4396219
5725219
61361219
72041219
82387219
92452219
102534219
112605219
122646219
132666219
142672219
02672219
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(sin.f64 th)
th
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 ky)
ky
(sin.f64 kx)
kx
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
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 (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 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(sin.f64 th)
th
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))
(neg.f64 (sin.f64 ky))
(sin.f64 ky)
ky
(sin.f64 th)
th
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(literal -1 binary64)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.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
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
#s(literal -1 binary64)
Outputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(sin.f64 th)
th
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 ky)
ky
(sin.f64 kx)
kx
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
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) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.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)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(sin.f64 th)
th
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (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 (neg.f64 (sin.f64 ky)) (sin.f64 th))
(neg.f64 (sin.f64 ky))
(sin.f64 ky)
ky
(sin.f64 th)
th
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(literal -1 binary64)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(/.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
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
#s(literal -1 binary64)

localize101.0ms (0.9%)

Memory
11.0MiB live, 166.4MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.0625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.125
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
accuracy0.26953125
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.3125
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
accuracy0.0625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.1875
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.22265625
(*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))
accuracy1.6935968675681026
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
accuracy0.20703125
(/.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)))))
accuracy0.26171875
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy3.776551461592394
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
accuracy27.841428369050906
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
accuracy0.0
(sin.f64 th)
accuracy47.90715390865931
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
accuracy0.00390625
(sin.f64 kx)
accuracy0.0625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.16244125976844204
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
accuracy0.203125
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
Samples
80.0ms256×0valid
Compiler

Compiled 271 to 27 computations (90% saved)

Precisions
Click to see histograms. Total time spent on operations: 55.0ms
ival-sin: 21.0ms (38.1% of total)
ival-div: 9.0ms (16.3% of total)
ival-hypot: 7.0ms (12.7% of total)
ival-mult: 6.0ms (10.9% of total)
ival-pow2: 5.0ms (9.1% of total)
ival-pow: 3.0ms (5.4% of total)
ival-sqrt: 2.0ms (3.6% of total)
ival-add: 1.0ms (1.8% of total)
ival-neg: 1.0ms (1.8% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series40.0ms (0.4%)

Memory
-0.3MiB live, 38.3MiB allocated
Counts
19 → 102
Calls
Call 1
Inputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(sin.f64 th)
(/.f64 (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))
(*.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 (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 ky)
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))
(neg.f64 (sin.f64 ky))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 kx)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(pow.f64 (sin.f64 ky) #s(literal -1 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))))))))))))
1
(+ 1 (* 1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (pow (sin ky) 2))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (pow (sin ky) 2))))) (* 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 (* -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 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))))
(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))))
(/ -1 (sin ky))
(- (* 1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* -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 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sin kx)
(pow (sin kx) 2)
(* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(/ (* 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))))
(/ (sin kx) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (* 1/2 (/ 1 (sin kx)))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (* 1/12 (/ 1 (sin kx)))))))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (+ (* 1/12 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/12 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 31/15120 (sin kx)) (+ (* 7/720 (/ 1 (sin kx))) (* 1/2 (/ (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2)))) (sin kx))))))))))))))) ky)
(+ (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 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))))
(* -1 (* ky (sin th)))
(* ky (+ (* -1 (sin th)) (* 1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* -1/120 (* (pow ky 2) (sin th))) (* 1/6 (sin th))))))
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* 1/6 (sin th)) (* (pow ky 2) (+ (* -1/120 (sin th)) (* 1/5040 (* (pow ky 2) (sin th)))))))))
(* -1 ky)
(* ky (- (* 1/6 (pow ky 2)) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* -1/120 (pow ky 2)))) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* (pow ky 2) (- (* 1/5040 (pow ky 2)) 1/120)))) 1))
(/ (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)))
(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))))
(/ -1 (sin kx))
(- (* 1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/2 (* (pow ky 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/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(/ 1 ky)
(/ (+ 1 (* 1/6 (pow ky 2))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* 7/360 (pow ky 2))))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* (pow ky 2) (+ 7/360 (* 31/15120 (pow ky 2))))))) ky)
(* -1 (* (sin ky) (sin th)))
(* -1 (sin ky))
(pow (sin ky) 2)
(/ 1 (sin ky))
(* (* 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))))
(* -1 (* th (sin ky)))
(* th (+ (* -1 (sin ky)) (* 1/6 (* (pow th 2) (sin ky)))))
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* -1/120 (* (pow th 2) (sin ky))) (* 1/6 (sin ky))))))
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* 1/6 (sin ky)) (* (pow th 2) (+ (* -1/120 (sin ky)) (* 1/5040 (* (pow th 2) (sin ky)))))))))
(* 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)))))))))))
Calls

9 calls:

TimeVariablePointExpression
14.0ms
kx
@-inf
((/ (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 ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (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 th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (* (neg (sin ky)) (sin th)) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (* (neg (sin ky)) (sin th)) (neg (sin ky)) (/ (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin kx) (pow (sin ky) 2) (pow (sin kx) 2) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1))
3.0ms
ky
@-inf
((/ (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 ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (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 th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (* (neg (sin ky)) (sin th)) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (* (neg (sin ky)) (sin th)) (neg (sin ky)) (/ (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin kx) (pow (sin ky) 2) (pow (sin kx) 2) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1))
3.0ms
ky
@inf
((/ (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 ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (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 th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (* (neg (sin ky)) (sin th)) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (* (neg (sin ky)) (sin th)) (neg (sin ky)) (/ (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin kx) (pow (sin ky) 2) (pow (sin kx) 2) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1))
3.0ms
ky
@0
((/ (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 ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (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 th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (* (neg (sin ky)) (sin th)) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (* (neg (sin ky)) (sin th)) (neg (sin ky)) (/ (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin kx) (pow (sin ky) 2) (pow (sin kx) 2) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1))
3.0ms
kx
@inf
((/ (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 ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (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 th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (* (neg (sin ky)) (sin th)) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (* (neg (sin ky)) (sin th)) (neg (sin ky)) (/ (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin kx) (pow (sin ky) 2) (pow (sin kx) 2) (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sin ky) -1))

simplify198.0ms (1.8%)

Memory
-2.1MiB live, 274.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05672861
118442746
269432638
081242461
Stop Event
iter limit
node limit
Counts
102 → 99
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) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (pow (sin ky) 2))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (pow (sin ky) 2))))) (* 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 (* -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 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))))
(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))))
(/ -1 (sin ky))
(- (* 1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* -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 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sin kx)
(pow (sin kx) 2)
(* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(/ (* 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))))
(/ (sin kx) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (* 1/2 (/ 1 (sin kx)))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (* 1/12 (/ 1 (sin kx)))))))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (+ (* 1/12 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/12 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 31/15120 (sin kx)) (+ (* 7/720 (/ 1 (sin kx))) (* 1/2 (/ (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2)))) (sin kx))))))))))))))) ky)
(+ (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 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))))
(* -1 (* ky (sin th)))
(* ky (+ (* -1 (sin th)) (* 1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* -1/120 (* (pow ky 2) (sin th))) (* 1/6 (sin th))))))
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* 1/6 (sin th)) (* (pow ky 2) (+ (* -1/120 (sin th)) (* 1/5040 (* (pow ky 2) (sin th)))))))))
(* -1 ky)
(* ky (- (* 1/6 (pow ky 2)) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* -1/120 (pow ky 2)))) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* (pow ky 2) (- (* 1/5040 (pow ky 2)) 1/120)))) 1))
(/ (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)))
(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))))
(/ -1 (sin kx))
(- (* 1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/2 (* (pow ky 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/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(/ 1 ky)
(/ (+ 1 (* 1/6 (pow ky 2))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* 7/360 (pow ky 2))))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* (pow ky 2) (+ 7/360 (* 31/15120 (pow ky 2))))))) ky)
(* -1 (* (sin ky) (sin th)))
(* -1 (sin ky))
(pow (sin ky) 2)
(/ 1 (sin ky))
(* (* 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))))
(* -1 (* th (sin ky)))
(* th (+ (* -1 (sin ky)) (* 1/6 (* (pow th 2) (sin ky)))))
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* -1/120 (* (pow th 2) (sin ky))) (* 1/6 (sin ky))))))
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* 1/6 (sin ky)) (* (pow th 2) (+ (* -1/120 (sin ky)) (* 1/5040 (* (pow th 2) (sin ky)))))))))
(* 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)))))))))))
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 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.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 (*.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) (* (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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (*.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)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.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 th)))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (/.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) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (pow (sin ky) 2))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (/.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) (/.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 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (pow (sin ky) 2))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (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)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1/2 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/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 (fma.f64 (/.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)) (sin.f64 ky)) (*.f64 kx kx) (/.f64 #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)) (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)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (*.f64 kx (/.f64 kx (sin.f64 ky)))) #s(literal 1/2 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)) (sin.f64 ky))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))
(+ 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 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))) (/.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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (+.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)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (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)))))))) (*.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 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 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 3 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 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.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 (*.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))) (* (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 (*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 #s(literal 1/2 binary64) (*.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)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.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))))) (/.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)) (fma.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)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)
(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)) (fma.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)) (fma.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx))
(/ -1 (sin ky))
(/.f64 #s(literal -1 binary64) (sin.f64 ky))
(- (* 1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (*.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 ky)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(- (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* -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 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (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))))) (*.f64 #s(literal -1/2 binary64) (+.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))))))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (/.f64 #s(literal -1 binary64) (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)))
(* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (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))
(* (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)
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(neg.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))))))
(/ (* 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))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.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))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (*.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 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.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))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (sin.f64 th)) (+.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)))) (*.f64 (fma.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (fma.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))))) #s(literal -1/2 binary64) (*.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)))) #s(literal -1/12 binary64))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/5040 binary64) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky)))) (*.f64 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(/ (sin kx) ky)
(/.f64 (sin.f64 kx) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (* 1/2 (/ 1 (sin kx)))))) ky)
(/.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) ky) ky (sin.f64 kx)) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (* 1/12 (/ 1 (sin kx)))))))))) ky)
(/.f64 (fma.f64 (fma.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)) (sin.f64 kx)) #s(literal -1/2 binary64) (fma.f64 #s(literal 7/360 binary64) (sin.f64 kx) (/.f64 #s(literal 1/12 binary64) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)))) (*.f64 ky ky) (sin.f64 kx)) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (+ (* 1/12 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/12 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 31/15120 (sin kx)) (+ (* 7/720 (/ 1 (sin kx))) (* 1/2 (/ (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2)))) (sin kx))))))))))))))) ky)
(/.f64 (fma.f64 (fma.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)) (sin.f64 kx)) #s(literal -1/2 binary64) (fma.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)) (sin.f64 kx)) #s(literal -1/12 binary64) (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)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (sin.f64 kx)) #s(literal 1/2 binary64) (fma.f64 #s(literal 31/15120 binary64) (sin.f64 kx) (/.f64 #s(literal 7/720 binary64) (sin.f64 kx))))) (*.f64 ky ky) (fma.f64 #s(literal 7/360 binary64) (sin.f64 kx) (/.f64 #s(literal 1/12 binary64) (sin.f64 kx))))) (*.f64 ky ky) (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)))) (*.f64 ky ky) (sin.f64 kx)) 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 (fma.f64 (/.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)) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #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)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (/.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)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (sin.f64 kx)) (/.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)) (sin.f64 kx))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) 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 (*.f64 ky (*.f64 (neg.f64 ky) ky)) (+.f64 (/.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/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 (*.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (+.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)))) (/.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/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)) (fma.f64 (+.f64 (fma.f64 (fma.f64 (sin.f64 kx) (fma.f64 #s(literal -1/2 binary64) (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))))) (*.f64 #s(literal -1/12 binary64) (+.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)))))) (neg.f64 (+.f64 (/.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 #s(literal 1/2 binary64) (sin.f64 kx)) (+.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)))) (/.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) (neg.f64 (+.f64 (/.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)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #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)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)
(* -1 (* ky (sin th)))
(*.f64 (neg.f64 ky) (sin.f64 th))
(* ky (+ (* -1 (sin th)) (* 1/6 (* (pow ky 2) (sin th)))))
(*.f64 (*.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64))) ky)
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* -1/120 (* (pow ky 2) (sin th))) (* 1/6 (sin th))))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sin.f64 th) (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64))) (*.f64 (neg.f64 ky) (sin.f64 th)))
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* 1/6 (sin th)) (* (pow ky 2) (+ (* -1/120 (sin th)) (* 1/5040 (* (pow ky 2) (sin th)))))))))
(*.f64 (fma.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) (*.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 th) (fma.f64 #s(literal 1/5040 binary64) (*.f64 ky ky) #s(literal -1/120 binary64))))) ky)
(* -1 ky)
(neg.f64 ky)
(* ky (- (* 1/6 (pow ky 2)) 1))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)
(* ky (- (* (pow ky 2) (+ 1/6 (* -1/120 (pow ky 2)))) 1))
(*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)
(* ky (- (* (pow ky 2) (+ 1/6 (* (pow ky 2) (- (* 1/5040 (pow ky 2)) 1/120)))) 1))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 ky ky) #s(literal -1/120 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) 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 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (*.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 (*.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)))
(+ (* (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 (*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) ky) ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 kx) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 ky ky)) (*.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)) (*.f64 #s(literal 1/2 binary64) (*.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 (sin.f64 th) (sin.f64 kx))))
(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)) (fma.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)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64)) (*.f64 ky ky) #s(literal -1/3 binary64)) (*.f64 ky ky))
(/ -1 (sin kx))
(/.f64 #s(literal -1 binary64) (sin.f64 kx))
(- (* 1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) ky) ky (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/2 binary64)) (*.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 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)))
(- (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/2 (* (pow ky 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/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 kx) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (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))))) (*.f64 #s(literal -1/2 binary64) (+.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))))))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) ky) ky (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(/ 1 ky)
(/.f64 #s(literal 1 binary64) ky)
(/ (+ 1 (* 1/6 (pow ky 2))) ky)
(/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* 7/360 (pow ky 2))))) ky)
(/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* (pow ky 2) (+ 7/360 (* 31/15120 (pow ky 2))))))) ky)
(/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(* -1 (* (sin ky) (sin th)))
(*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))
(* -1 (sin ky))
(neg.f64 (sin.f64 ky))
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(/ 1 (sin ky))
(/.f64 #s(literal 1 binary64) (sin.f64 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))))) (fma.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)) (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 (*.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)))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 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))))) (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 th th) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)) (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))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))))) th)
th
(* th (+ 1 (* -1/6 (pow th 2))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th)
(* -1 (* th (sin ky)))
(*.f64 (neg.f64 th) (sin.f64 ky))
(* th (+ (* -1 (sin ky)) (* 1/6 (* (pow th 2) (sin ky)))))
(*.f64 (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal -1 binary64))) th)
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* -1/120 (* (pow th 2) (sin ky))) (* 1/6 (sin ky))))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/120 binary64) #s(literal 1/6 binary64))) (*.f64 (neg.f64 th) (sin.f64 ky)))
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* 1/6 (sin ky)) (* (pow th 2) (+ (* -1/120 (sin ky)) (* 1/5040 (* (pow th 2) (sin ky)))))))))
(*.f64 (fma.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal -1 binary64)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/5040 binary64) #s(literal -1/120 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 (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 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 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 (*.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)) (*.f64 (*.f64 th th) (*.f64 (*.f64 th th) #s(literal 1/120 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 (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 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) th)

rewrite174.0ms (1.5%)

Memory
8.4MiB live, 238.6MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
035167
058157
1204157
21217157
09522157
Stop Event
iter limit
node limit
iter limit
Counts
19 → 654
Calls
Call 1
Inputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(sin.f64 th)
(/.f64 (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))
(*.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 (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 ky)
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))
(neg.f64 (sin.f64 ky))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 kx)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
Outputs
(*.f64 (pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))) (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(*.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))) (sqrt.f64 (sin.f64 kx)))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal -1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (*.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (pow.f64 (/.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (sqrt.f64 (sin.f64 kx)) (/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 kx))) (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 th) #s(literal -1 binary64)))
(*.f64 (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 kx) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 th) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 th)) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 (neg.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) (neg.f64 (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx))))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))))
(/.f64 (sin.f64 kx) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (neg.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(neg.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(neg.f64 (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(neg.f64 (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))) (/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx)))) (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (sin.f64 th))
(*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 th)))
(*.f64 (sin.f64 th) #s(literal 1 binary64))
(/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(/.f64 (sin.f64 th) #s(literal 1 binary64))
(neg.f64 (neg.f64 (sin.f64 th)))
(sin.f64 th)
(-.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 th)))
(*.f64 (pow.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1/2 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 (sin.f64 kx))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 (sin.f64 kx))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64)) (sqrt.f64 (sin.f64 kx))) (/.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64)) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64)) #s(literal 1 binary64)) (/.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64)) (sin.f64 kx)))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(*.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(*.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1 binary64))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(pow.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1 binary64))
(/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1 binary64))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx))
(neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(exp.f64 (-.f64 (*.f64 (log1p.f64 (neg.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 1/2 binary64)) (log.f64 (sin.f64 kx))))
(exp.f64 (fma.f64 (log.f64 (sin.f64 kx)) #s(literal -1 binary64) (*.f64 (log1p.f64 (neg.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 1/2 binary64))))
(exp.f64 (fma.f64 (log1p.f64 (neg.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 1/2 binary64) (neg.f64 (log.f64 (sin.f64 kx)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64))) (sqrt.f64 (pow.f64 #s(literal 0 binary64) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64))) (pow.f64 (pow.f64 #s(literal 0 binary64) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64))) (pow.f64 #s(literal 0 binary64) #s(literal -1 binary64)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (pow.f64 (pow.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(*.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log1p.f64 (neg.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64)))) #s(literal 0 binary64))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64)))) #s(literal 0 binary64))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 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) kx)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64))) #s(literal 0 binary64))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 0 binary64) (sqrt.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 0 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64)))))
(/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal 1 binary64))
(neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(-.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(hypot.f64 (sin.f64 kx) (sin.f64 kx))
(exp.f64 (*.f64 (log1p.f64 (neg.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 1/2 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 kx))
(*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (*.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sin.f64 kx) (*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (sin.f64 th)))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 kx) (sin.f64 th))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 kx) (sin.f64 th))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 kx) (sin.f64 th)))))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.f64 (pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (sin.f64 kx))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)))
(pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))) (+.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (*.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))) (*.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 kx))) (*.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx))))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(exp.f64 (-.f64 (log.f64 (sin.f64 kx)) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx))) #s(literal -1 binary64)))
(+.f64 #s(literal 0 binary64) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.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)))
(*.f64 #s(literal 1 binary64) (sin.f64 kx))
(*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 kx)))
(*.f64 (sin.f64 kx) #s(literal 1 binary64))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) #s(literal -2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #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 (+.f64 #s(literal 0 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64))))
(/.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))
(/.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (neg.f64 (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (sin.f64 kx) #s(literal 1 binary64))
(neg.f64 (neg.f64 (sin.f64 kx)))
(sin.f64 kx)
(sin.f64 ky)
(-.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx)))
(exp.f64 (*.f64 (neg.f64 (log.f64 (sin.f64 kx))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)))
(exp.f64 (log.f64 (sin.f64 kx)))
(+.f64 #s(literal 0 binary64) (sin.f64 kx))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (pow.f64 (pow.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (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 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (+.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (*.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)))
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1 binary64))
(neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(-.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))) (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(*.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))) (sqrt.f64 (sin.f64 kx)))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal -1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (*.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (pow.f64 (/.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (sqrt.f64 (sin.f64 kx)) (/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 kx))) (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 th) #s(literal -1 binary64)))
(*.f64 (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 kx) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 th) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 th)) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 (neg.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) (neg.f64 (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx))))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))))
(/.f64 (sin.f64 kx) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (neg.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(neg.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(neg.f64 (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(neg.f64 (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))) (/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx)))) (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (sin.f64 kx))
(*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)))
(*.f64 #s(literal -1 binary64) (*.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) #s(literal 1 binary64))
(*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))
(*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th)))
(*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (*.f64 (sin.f64 kx) (sin.f64 th)))) (+.f64 #s(literal 0 binary64) (*.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (*.f64 (sin.f64 kx) (sin.f64 th)) (*.f64 #s(literal 0 binary64) (*.f64 (sin.f64 kx) (sin.f64 th))))))
(/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(neg.f64 (*.f64 (sin.f64 kx) (sin.f64 th)))
(-.f64 #s(literal 0 binary64) (*.f64 (sin.f64 kx) (sin.f64 th)))
(+.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)))
(*.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 0 binary64))))
(*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 kx)))
(*.f64 #s(literal -1 binary64) (sin.f64 kx))
(*.f64 (sin.f64 kx) #s(literal -1 binary64))
(pow.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))) (sin.f64 kx))
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx))) (*.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx))))))
(/.f64 (neg.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (neg.f64 (sin.f64 kx)))
(/.f64 (neg.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 0 binary64))))
(/.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (sin.f64 kx))
(/.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 0 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 0 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(neg.f64 (sin.f64 kx))
(-.f64 (/.f64 #s(literal 0 binary64) (sin.f64 kx)) (/.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (sin.f64 kx)))
(-.f64 (/.f64 #s(literal 0 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 0 binary64))) (/.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 0 binary64))))
(-.f64 #s(literal 0 binary64) (sin.f64 kx))
(+.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx)))
(*.f64 (pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))) (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(*.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))) (sqrt.f64 (sin.f64 kx)))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal -1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (*.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1 binary64)) (*.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (pow.f64 (/.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (sqrt.f64 (sin.f64 kx)) (/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 kx))) (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 th) #s(literal -1 binary64)))
(*.f64 (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 kx) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 kx) (sin.f64 th)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 th) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 th)) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 (neg.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) (neg.f64 (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx))))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))))
(/.f64 (sin.f64 kx) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (neg.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(neg.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(neg.f64 (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(neg.f64 (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))) (/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx)))) (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx)))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) #s(literal -1/2 binary64)))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (sin.f64 th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th))) #s(literal -1 binary64)))
(*.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)))
(*.f64 #s(literal 1 binary64) (sin.f64 kx))
(*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 kx)))
(*.f64 (sin.f64 kx) #s(literal 1 binary64))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) #s(literal -2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #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 (+.f64 #s(literal 0 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 0 binary64))))
(/.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64))))
(/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))
(/.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (neg.f64 (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (sin.f64 kx) #s(literal 1 binary64))
(neg.f64 (neg.f64 (sin.f64 kx)))
(sin.f64 kx)
(sin.f64 ky)
(-.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx)))
(exp.f64 (*.f64 (neg.f64 (log.f64 (sin.f64 kx))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)))
(exp.f64 (log.f64 (sin.f64 kx)))
(+.f64 #s(literal 0 binary64) (sin.f64 kx))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(*.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))) (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(*.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 kx) #s(literal 4 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))))
(*.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (+.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 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -1/2 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/2 binary64))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64))
(pow.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #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 #s(literal 1 binary64) (*.f64 (*.f64 (neg.f64 (cos.f64 kx)) (cos.f64 kx)) (*.f64 (neg.f64 (cos.f64 kx)) (cos.f64 kx)))) (-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 kx)) (cos.f64 kx))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))) (-.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky)) (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky)))) (-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky))))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (neg.f64 (cos.f64 kx)) (cos.f64 kx)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 kx)) (cos.f64 kx)) (*.f64 (neg.f64 (cos.f64 kx)) (cos.f64 kx))) (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 kx)) (cos.f64 kx))))))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))) (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (*.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky)) (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky))) (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 4 binary64)))) (neg.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(/.f64 (neg.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)))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 6 binary64)))) (neg.f64 (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 kx) #s(literal 4 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))) (neg.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 (neg.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 4 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky kx)) (cos.f64 (+.f64 ky kx))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 kx ky)) (cos.f64 (+.f64 kx ky))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.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))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 kx) #s(literal 4 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (+.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 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 4 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (-.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)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 kx) #s(literal 4 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 6 binary64)))))
(/.f64 #s(literal 1 binary64) (/.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 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 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) (neg.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cos.f64 kx) #s(literal 4 binary64)) (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (/.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 kx) #s(literal 4 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))) (/.f64 (pow.f64 (cos.f64 kx) #s(literal 6 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (cos.f64 kx) #s(literal 4 binary64)) (pow.f64 (cos.f64 kx) #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) 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 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (+.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 #s(literal 1 binary64) (pow.f64 (cos.f64 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)))
(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 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky)))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.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) kx))))
(+.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))
(*.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1/2 binary64)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 #s(literal 1/2 binary64) #s(literal -1/2 binary64)))
(*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #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 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (sin.f64 kx))
(/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal 1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 kx)))
(neg.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(-.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(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 (*.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 -1/2 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64)))
(exp.f64 (neg.f64 (log.f64 (sin.f64 kx))))

eval117.0ms (1%)

Memory
18.9MiB live, 290.1MiB allocated
Compiler

Compiled 20 347 to 2 719 computations (86.6% saved)

prune55.0ms (0.5%)

Memory
9.5MiB live, 165.0MiB allocated
Pruning

38 alts after pruning (34 fresh and 4 done)

PrunedKeptTotal
New83221853
Fresh41317
Picked145
Done000
Total83738875
Accuracy
100.0%
Counts
875 → 38
Alt Table
Click to see full alt table
StatusAccuracyProgram
55.9%
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
17.9%
(/.f64 (/.f64 (sin.f64 th) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
99.4%
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
97.4%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
99.6%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
17.9%
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sin.f64 ky)))
30.6%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
32.7%
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
99.4%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
99.5%
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
99.4%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
75.9%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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))
84.8%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
51.7%
(*.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))
85.1%
(*.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))
43.1%
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
46.1%
(*.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))
27.8%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
32.7%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
85.6%
(*.f64 (*.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))))) (sin.f64 th))
99.5%
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
75.9%
(*.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sin.f64 th))
97.4%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
17.9%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
31.4%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
31.6%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
54.4%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 ky ky) #s(literal -1/120 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
54.2%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
54.2%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
53.8%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
18.5%
(*.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))
30.6%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
44.9%
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
43.4%
#s(approx (/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (*.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)))))))
25.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
25.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
12.8%
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
12.6%
#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)))
Compiler

Compiled 1 514 to 1 177 computations (22.3% saved)

simplify147.0ms (1.3%)

Memory
-39.3MiB live, 99.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
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)))
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))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
cost-diff0
(sin.f64 ky)
cost-diff0
(neg.f64 (sin.f64 ky))
cost-diff0
(*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))
cost-diff3
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
cost-diff0
(pow.f64 th #s(literal 3 binary64))
cost-diff0
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
cost-diff0
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
cost-diff0
#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)))
cost-diff0
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
cost-diff0
(pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))
cost-diff0
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
cost-diff4
(/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
045232
071231
1102231
2157220
3288216
4461216
5869216
61703216
72371216
82721216
93055216
103114216
113169216
123194216
133242216
143242216
03242216
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 ky)
ky
(sin.f64 kx)
kx
#s(literal -1 binary64)
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
(sin.f64 th)
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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(pow.f64 th #s(literal 3 binary64))
th
#s(literal 3 binary64)
#s(literal -1/6 binary64)
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))
(neg.f64 (sin.f64 ky))
(sin.f64 ky)
ky
(sin.f64 th)
th
(/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
#s(literal -1 binary64)
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) 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
#s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))
(/.f64 #s(literal 1 binary64) ky)
#s(literal 1 binary64)
(/.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
Outputs
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))
(pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 ky)
ky
(sin.f64 kx)
kx
#s(literal -1 binary64)
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
(sin.f64 th)
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 ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
#s(approx (sin th) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)
(pow.f64 th #s(literal 3 binary64))
th
#s(literal 3 binary64)
#s(literal -1/6 binary64)
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))
(neg.f64 (sin.f64 ky))
(sin.f64 ky)
ky
(sin.f64 th)
th
(/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
#s(literal -1 binary64)
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) 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
#s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))
(/.f64 #s(literal 1 binary64) ky)
#s(literal 1 binary64)
(/.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))
(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

localize118.0ms (1%)

Memory
21.0MiB live, 216.4MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.00390625
(sin.f64 kx)
accuracy0.0625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.22265625
(*.f64 (sin.f64 th) (sin.f64 ky))
accuracy1.6467218675681026
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.0625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.26953125
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.3125
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
accuracy27.97619338439629
#s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))
accuracy0.1875
(/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
accuracy0.22265625
(*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))
accuracy1.6935968675681026
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
accuracy48.14628695124466
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
accuracy0.0
(pow.f64 th #s(literal 3 binary64))
accuracy0.0859375
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
accuracy34.31009491940281
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
accuracy47.90715390865931
#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)))
accuracy0.125
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
accuracy0.1875
(pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))
accuracy0.19921875
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
accuracy0.25228500976844204
(/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
Samples
95.0ms256×0valid
Compiler

Compiled 285 to 35 computations (87.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 69.0ms
ival-sin: 21.0ms (30.6% of total)
ival-div: 10.0ms (14.6% of total)
ival-mult: 9.0ms (13.1% of total)
ival-pow: 8.0ms (11.7% of total)
ival-pow2: 5.0ms (7.3% of total)
ival-hypot: 4.0ms (5.8% of total)
const: 4.0ms (5.8% of total)
ival-add: 2.0ms (2.9% of total)
ival-sqrt: 2.0ms (2.9% of total)
ival-neg: 2.0ms (2.9% of total)
exact: 1.0ms (1.5% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series25.0ms (0.2%)

Memory
8.8MiB live, 47.2MiB allocated
Counts
22 → 105
Calls
Call 1
Inputs
(/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
(pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(pow.f64 th #s(literal 3 binary64))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))
(neg.f64 (sin.f64 ky))
(sin.f64 ky)
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 th)
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (sin.f64 ky))
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
(/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
#s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))
(sin.f64 kx)
Outputs
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 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 (sin ky))
(+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* -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) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin 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))))))
(/ (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)))
(/ -1 (sin ky))
(- (* 1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* -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 (/ 1 (pow (sin ky) 3))))) (/ 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))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(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 (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))))
(/ 1 (sin kx))
(+ (* -1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 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/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (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))))))
(* -1 (* ky (sin th)))
(* ky (+ (* -1 (sin th)) (* 1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* -1/120 (* (pow ky 2) (sin th))) (* 1/6 (sin th))))))
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* 1/6 (sin th)) (* (pow ky 2) (+ (* -1/120 (sin th)) (* 1/5040 (* (pow ky 2) (sin th)))))))))
(* -1 ky)
(* ky (- (* 1/6 (pow ky 2)) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* -1/120 (pow ky 2)))) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* (pow ky 2) (- (* 1/5040 (pow ky 2)) 1/120)))) 1))
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 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)))
(* 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))))))))
(/ 1 ky)
(/ (+ 1 (* 1/6 (pow ky 2))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* 7/360 (pow ky 2))))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* (pow ky 2) (+ 7/360 (* 31/15120 (pow ky 2))))))) ky)
(/ -1 (sin kx))
(- (* 1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/2 (* (pow ky 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/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(* -1 (* (sin ky) (sin th)))
(* -1 (sin ky))
(* (sin ky) (sin th))
(* (* 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))))
(pow th 3)
(* -1 (* th (sin ky)))
(* th (+ (* -1 (sin ky)) (* 1/6 (* (pow th 2) (sin ky)))))
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* -1/120 (* (pow th 2) (sin ky))) (* 1/6 (sin ky))))))
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* 1/6 (sin ky)) (* (pow th 2) (+ (* -1/120 (sin ky)) (* 1/5040 (* (pow th 2) (sin ky)))))))))
(* 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 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))))))))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Calls

9 calls:

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

simplify184.0ms (1.6%)

Memory
-11.6MiB live, 259.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05522936
118122795
269242697
080342534
Stop Event
iter limit
node limit
Counts
105 → 102
Calls
Call 1
Inputs
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 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 (sin ky))
(+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* -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) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin 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))))))
(/ (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)))
(/ -1 (sin ky))
(- (* 1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* -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 (/ 1 (pow (sin ky) 3))))) (/ 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))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(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 (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))))
(/ 1 (sin kx))
(+ (* -1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 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/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (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))))))
(* -1 (* ky (sin th)))
(* ky (+ (* -1 (sin th)) (* 1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* -1/120 (* (pow ky 2) (sin th))) (* 1/6 (sin th))))))
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* 1/6 (sin th)) (* (pow ky 2) (+ (* -1/120 (sin th)) (* 1/5040 (* (pow ky 2) (sin th)))))))))
(* -1 ky)
(* ky (- (* 1/6 (pow ky 2)) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* -1/120 (pow ky 2)))) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* (pow ky 2) (- (* 1/5040 (pow ky 2)) 1/120)))) 1))
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 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)))
(* 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))))))))
(/ 1 ky)
(/ (+ 1 (* 1/6 (pow ky 2))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* 7/360 (pow ky 2))))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* (pow ky 2) (+ 7/360 (* 31/15120 (pow ky 2))))))) ky)
(/ -1 (sin kx))
(- (* 1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/2 (* (pow ky 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/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(* -1 (* (sin ky) (sin th)))
(* -1 (sin ky))
(* (sin ky) (sin th))
(* (* 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))))
(pow th 3)
(* -1 (* th (sin ky)))
(* th (+ (* -1 (sin ky)) (* 1/6 (* (pow th 2) (sin ky)))))
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* -1/120 (* (pow th 2) (sin ky))) (* 1/6 (sin ky))))))
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* 1/6 (sin ky)) (* (pow th 2) (+ (* -1/120 (sin ky)) (* 1/5040 (* (pow th 2) (sin ky)))))))))
(* 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 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))))))))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Outputs
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 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))) (/.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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (+.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)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (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)))))))) (*.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 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 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.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 (*.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) (* (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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (*.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)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.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 th)))
(/ 1 (sin ky))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
(+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(+ (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.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 ky)) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* -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) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (fma.f64 (*.f64 (sin.f64 ky) (fma.f64 #s(literal 1/2 binary64) (+.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)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (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)))))))) (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(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 (fma.f64 (/.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)) (sin.f64 ky)) (*.f64 kx kx) (/.f64 #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)) (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)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (*.f64 kx (/.f64 kx (sin.f64 ky)))) #s(literal 1/2 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)) (sin.f64 ky))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))
(/ (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 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 3 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 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.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 ky)) (sin.f64 th)) (/.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))) (* (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 (*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 #s(literal 1/2 binary64) (*.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)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.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))))) (/.f64 (sin.f64 th) (sin.f64 ky))))
(/ -1 (sin ky))
(/.f64 #s(literal -1 binary64) (sin.f64 ky))
(- (* 1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (*.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 ky)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(- (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* -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 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (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))))) (*.f64 #s(literal -1/2 binary64) (+.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))))))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (/.f64 #s(literal -1 binary64) (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)) (fma.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)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)
(* (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))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 th) (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))))))
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (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))
(* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(neg.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 kx)
(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))))
(*.f64 (fma.f64 (-.f64 (/.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 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 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (+.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)))) (/.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/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)) (fma.f64 (+.f64 (fma.f64 (fma.f64 (sin.f64 kx) (fma.f64 #s(literal -1/2 binary64) (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))))) (*.f64 #s(literal -1/12 binary64) (+.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)))))) (neg.f64 (+.f64 (/.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 #s(literal 1/2 binary64) (sin.f64 kx)) (+.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)))) (/.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/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 (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))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.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))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (*.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 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.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))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (sin.f64 th)) (+.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)))) (*.f64 (fma.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (fma.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))))) #s(literal -1/2 binary64) (*.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)))) #s(literal -1/12 binary64))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/5040 binary64) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky)))) (*.f64 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(/ 1 (sin kx))
(/.f64 #s(literal 1 binary64) (sin.f64 kx))
(+ (* -1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(fma.f64 (/.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)))
(+ (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (*.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 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)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 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/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (fma.f64 (*.f64 (sin.f64 kx) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 ky ky)) (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))))) (*.f64 #s(literal 1/2 binary64) (+.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))))))) (*.f64 ky ky) (/.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)))
(+ (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 (fma.f64 (/.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)) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #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)) (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)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (*.f64 ky (/.f64 ky (sin.f64 kx)))) #s(literal 1/2 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)) (sin.f64 kx))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))
(* -1 (* ky (sin th)))
(*.f64 (neg.f64 ky) (sin.f64 th))
(* ky (+ (* -1 (sin th)) (* 1/6 (* (pow ky 2) (sin th)))))
(*.f64 (*.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64))) ky)
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* -1/120 (* (pow ky 2) (sin th))) (* 1/6 (sin th))))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sin.f64 th) (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64))) (*.f64 (neg.f64 ky) (sin.f64 th)))
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* 1/6 (sin th)) (* (pow ky 2) (+ (* -1/120 (sin th)) (* 1/5040 (* (pow ky 2) (sin th)))))))))
(*.f64 (fma.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) (*.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 th) (fma.f64 #s(literal 1/5040 binary64) (*.f64 ky ky) #s(literal -1/120 binary64))))) ky)
(* -1 ky)
(neg.f64 ky)
(* ky (- (* 1/6 (pow ky 2)) 1))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)
(* ky (- (* (pow ky 2) (+ 1/6 (* -1/120 (pow ky 2)))) 1))
(*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)
(* ky (- (* (pow ky 2) (+ 1/6 (* (pow ky 2) (- (* 1/5040 (pow ky 2)) 1/120)))) 1))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 ky ky) #s(literal -1/120 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)
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)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #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)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) 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 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (*.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 (*.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)))
(+ (* (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 (*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) ky) ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 kx) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 ky ky)) (*.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)) (*.f64 #s(literal 1/2 binary64) (*.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 (sin.f64 th) (sin.f64 kx))))
(* ky (sin th))
(*.f64 (sin.f64 th) ky)
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(*.f64 (sin.f64 th) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 (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 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th) (*.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) ky)
(/ 1 ky)
(/.f64 #s(literal 1 binary64) ky)
(/ (+ 1 (* 1/6 (pow ky 2))) ky)
(/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* 7/360 (pow ky 2))))) ky)
(/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* (pow ky 2) (+ 7/360 (* 31/15120 (pow ky 2))))))) ky)
(/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(/ -1 (sin kx))
(/.f64 #s(literal -1 binary64) (sin.f64 kx))
(- (* 1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) ky) ky (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/2 binary64)) (*.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 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)))
(- (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/2 (* (pow ky 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/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 kx) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (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))))) (*.f64 #s(literal -1/2 binary64) (+.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))))))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) ky) ky (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(* -1 (* (sin ky) (sin th)))
(*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))
(* -1 (sin ky))
(neg.f64 (sin.f64 ky))
(* (sin ky) (sin th))
(*.f64 (sin.f64 th) (sin.f64 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 (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 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) 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 (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 (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 th th) #s(literal -1/6 binary64) #s(literal 1 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))))) (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))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))))) th)
th
(* th (+ 1 (* -1/6 (pow th 2))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th)
(pow th 3)
(pow.f64 th #s(literal 3 binary64))
(* -1 (* th (sin ky)))
(*.f64 (neg.f64 th) (sin.f64 ky))
(* th (+ (* -1 (sin ky)) (* 1/6 (* (pow th 2) (sin ky)))))
(*.f64 (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal -1 binary64))) th)
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* -1/120 (* (pow th 2) (sin ky))) (* 1/6 (sin ky))))))
(fma.f64 (neg.f64 th) (sin.f64 ky) (*.f64 (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/120 binary64) #s(literal 1/6 binary64))) (pow.f64 th #s(literal 3 binary64))))
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* 1/6 (sin ky)) (* (pow th 2) (+ (* -1/120 (sin ky)) (* 1/5040 (* (pow th 2) (sin ky)))))))))
(*.f64 (fma.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal -1 binary64)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/5040 binary64) #s(literal -1/120 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 (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 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 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 (*.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)) (*.f64 (*.f64 th th) (*.f64 (*.f64 th th) #s(literal 1/120 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 (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 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) th)
(* th (sin ky))
(*.f64 (sin.f64 ky) th)
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(*.f64 (sin.f64 ky) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(fma.f64 (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (pow.f64 th #s(literal 3 binary64)) (*.f64 (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 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) 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 (* (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)))

rewrite249.0ms (2.2%)

Memory
-17.8MiB live, 274.3MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
045186
071185
1245172
21396170
08163170
Stop Event
iter limit
node limit
iter limit
Counts
22 → 680
Calls
Call 1
Inputs
(/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
(pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(pow.f64 th #s(literal 3 binary64))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))
(neg.f64 (sin.f64 ky))
(sin.f64 ky)
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 th)
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (sin.f64 ky))
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
(/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
#s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))
(sin.f64 kx)
Outputs
(*.f64 (/.f64 (neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64))) #s(literal -1 binary64)) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sin.f64 ky)))
(*.f64 (/.f64 (neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))) (/.f64 (neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) #s(literal -1 binary64)) (/.f64 (neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sin.f64 ky)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64))) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64))) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 ky) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 ky))))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 ky))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 ky))))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))
(*.f64 (neg.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 ky))
(*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sin.f64 ky)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 ky))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))
(*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (sin.f64 ky) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(pow.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(literal 3 binary64))) (fma.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (fma.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (*.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))))
(/.f64 (neg.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 ky)))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (neg.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (neg.f64 (neg.f64 (/.f64 #s(literal -1 binary64) (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 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))
(/.f64 (neg.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (neg.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.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)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(fma.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 ky))) (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 #s(literal 0 binary64) (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(exp.f64 (-.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1/2 binary64)) (*.f64 (log.f64 (sin.f64 ky)) #s(literal -1 binary64))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(exp.f64 (neg.f64 (-.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))))
(exp.f64 (fma.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1/2 binary64) (log.f64 (sin.f64 ky))))
(exp.f64 (+.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1/2 binary64))))
(exp.f64 (+.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64))))
(exp.f64 (*.f64 (-.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))) #s(literal -1 binary64)))
(exp.f64 (fma.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64) (log.f64 (sin.f64 ky))))
(+.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))))
(*.f64 (/.f64 #s(literal -2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (*.f64 (sin.f64 (*.f64 (-.f64 (-.f64 th ky) (+.f64 th ky)) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (+.f64 (-.f64 th ky) (+.f64 th ky)) #s(literal 1/2 binary64)))) #s(literal 2 binary64)))
(*.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 #s(literal 1/2 binary64) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 ky))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64))) #s(literal 1 binary64)) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sin.f64 ky)))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))) (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (/.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) #s(literal -1 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))
(*.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1/2 binary64))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th)) (pow.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky))))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 ky))) (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)))))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 ky))) (/.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))))
(*.f64 (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 ky))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 ky))))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 ky))) (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 ky))))
(*.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (/.f64 #s(literal 1 binary64) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 (neg.f64 (sin.f64 th)) (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 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))) (neg.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64))) (neg.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 2 binary64))
(/.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64)) (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 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) (neg.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (*.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (neg.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(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 th) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 th ky)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(-.f64 (/.f64 (*.f64 (cos.f64 (-.f64 th ky)) #s(literal 1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (*.f64 (cos.f64 (+.f64 th ky)) #s(literal 1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 ky))) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (sin.f64 ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) #s(literal -1/2 binary64)) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1/2 binary64)) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (+.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 (pow.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))) #s(literal -1 binary64)) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (+.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 (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 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)))
(*.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(pow.f64 (exp.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))) #s(literal -1/2 binary64))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(pow.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1/4 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal 1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(exp.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(exp.f64 (fma.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1/2 binary64) (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1/2 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1/2 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (/.f64 #s(literal 1 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 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1 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 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (/.f64 #s(literal 1 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))) (/.f64 #s(literal 1 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 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (pow.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))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (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 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (pow.f64 (pow.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))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (pow.f64 (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 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(pow.f64 (exp.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) #s(literal -2 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 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 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #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 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 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 kx) (sin.f64 ky)) #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) 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 (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 (-.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 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.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)))) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 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 kx) (sin.f64 ky)) #s(literal 2 binary64)))) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))
(sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(exp.f64 (neg.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) #s(literal -1/2 binary64))))
(exp.f64 (neg.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64))))
(exp.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))
#s(approx (sin th) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th))
(*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
(*.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))))))
(*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) #s(literal -1 binary64)))
(*.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 th th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64)))))))
(*.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64))) (pow.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (fma.f64 (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (*.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))))
(/.f64 (neg.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))))) (neg.f64 (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)))) (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (*.f64 th th))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
(/.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))) (neg.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64)))) (neg.f64 (fma.f64 th th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64)))))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64))) (fma.f64 th th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))) (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 th th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))) (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3/2 binary64))) (pow.f64 th #s(literal 3/2 binary64)) th)
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
(fma.f64 (*.f64 #s(literal -1/6 binary64) th) (*.f64 th th) th)
(fma.f64 (pow.f64 th #s(literal 3/2 binary64)) (*.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) th)
(fma.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
(fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)
(fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(fma.f64 th (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) th)
(-.f64 (/.f64 (*.f64 th th) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))) (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))
(-.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
(+.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (neg.f64 (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
(+.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)
(+.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))
(*.f64 (pow.f64 th #s(literal 3/2 binary64)) (pow.f64 th #s(literal 3/2 binary64)))
(*.f64 (*.f64 th th) th)
(*.f64 th (*.f64 th th))
(pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 th))
(pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 th th) #s(literal 3/2 binary64))
(pow.f64 th #s(literal 3 binary64))
(exp.f64 (fma.f64 (log.f64 th) #s(literal 3/2 binary64) (*.f64 (log.f64 th) #s(literal 3/2 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 th) #s(literal 3/2 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 th #s(literal 3/2 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 th th)) #s(literal 3/2 binary64)))
(exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64)))
(*.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(literal -1 binary64))
(*.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (/.f64 (sin.f64 th) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (/.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal -1 binary64)))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal -1 binary64))) (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))) (/.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))) (neg.f64 (sin.f64 ky)))
(*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky)))
(*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(*.f64 (sin.f64 th) (/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))))
(*.f64 #s(literal -1 binary64) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(pow.f64 (/.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)))) (neg.f64 (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)))) (neg.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64))) (neg.f64 (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64))) (neg.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal -1 binary64))))) (neg.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(/.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)) (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal -1 binary64)))) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal -1 binary64))) (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal 1 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal -1 binary64))) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky)))))
(neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(neg.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(neg.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64))) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(-.f64 #s(literal 0 binary64) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))))
(*.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (sin.f64 ky))
(*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) #s(literal 1/2 binary64))
(*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))
(*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1/2 binary64))
(*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))
(*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky)))
(*.f64 #s(literal -1 binary64) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th)))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 #s(literal 0 binary64) (*.f64 (sin.f64 th) (sin.f64 ky))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))))) #s(literal -2 binary64))
(/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) #s(literal 2 binary64))
(/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal -2 binary64) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))))
(/.f64 #s(literal -1 binary64) (pow.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal -1 binary64)))
(neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky)))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal -2 binary64)) (/.f64 (cos.f64 (+.f64 th ky)) #s(literal -2 binary64)))
(-.f64 #s(literal 0 binary64) (*.f64 (sin.f64 th) (sin.f64 ky)))
(+.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)))
(*.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 0 binary64) (sin.f64 ky))))
(*.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 0 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 #s(literal 0 binary64) (sin.f64 ky))))))
(*.f64 #s(literal -1 binary64) (sin.f64 ky))
(*.f64 (sin.f64 ky) #s(literal -1 binary64))
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky))) (*.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 ky))))))
(/.f64 (neg.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (neg.f64 (+.f64 #s(literal 0 binary64) (sin.f64 ky))))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (neg.f64 (+.f64 #s(literal 0 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 #s(literal 0 binary64) (sin.f64 ky))))))
(/.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (+.f64 #s(literal 0 binary64) (sin.f64 ky)))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 #s(literal 0 binary64) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 0 binary64) (sin.f64 ky)) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 0 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 #s(literal 0 binary64) (sin.f64 ky)))) (-.f64 #s(literal 0 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))))
(/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(neg.f64 (sin.f64 ky))
(-.f64 (/.f64 #s(literal 0 binary64) (+.f64 #s(literal 0 binary64) (sin.f64 ky))) (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (+.f64 #s(literal 0 binary64) (sin.f64 ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (+.f64 #s(literal 0 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 #s(literal 0 binary64) (sin.f64 ky))))) (/.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (+.f64 #s(literal 0 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 #s(literal 0 binary64) (sin.f64 ky))))))
(-.f64 #s(literal 0 binary64) (sin.f64 ky))
(+.f64 #s(literal 0 binary64) (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)))
(*.f64 #s(literal 1 binary64) (sin.f64 ky))
(*.f64 #s(literal -1 binary64) (pow.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (sin.f64 ky) #s(literal 1 binary64))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) #s(literal -2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(/.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))))
(/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(/.f64 (sin.f64 ky) #s(literal 1 binary64))
(sin.f64 ky)
(exp.f64 (*.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) #s(literal -1 binary64)))
(exp.f64 (log.f64 (sin.f64 ky)))
(*.f64 (/.f64 #s(literal -1 binary64) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (/.f64 (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(*.f64 (pow.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (neg.f64 (sin.f64 th))) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (pow.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))))
(*.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(*.f64 (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) #s(literal -1 binary64)))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal 1 binary64) (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(*.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sin.f64 th) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64)))
(*.f64 (sin.f64 th) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(pow.f64 (*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) #s(literal -1 binary64))
(pow.f64 (*.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64))
(/.f64 (neg.f64 (/.f64 (sin.f64 th) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64))) (neg.f64 (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))))
(/.f64 (neg.f64 (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (/.f64 (sin.f64 th) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (neg.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (neg.f64 (neg.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64)) (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (neg.f64 (neg.f64 (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))))
(/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(/.f64 (neg.f64 (sin.f64 th)) (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (*.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (sin.f64 th) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (neg.f64 (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (*.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal 1 binary64)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (neg.f64 (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))
(/.f64 (sin.f64 th) (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(neg.f64 (/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))) (/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (/.f64 (sin.f64 th) (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (/.f64 (sin.f64 th) (neg.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(-.f64 #s(literal 0 binary64) (/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)))
(*.f64 (neg.f64 (neg.f64 (sin.f64 th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sin.f64 th)))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1 binary64))
(*.f64 (sin.f64 th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 th))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) #s(literal -1 binary64))
(/.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 (*.f64 #s(literal 1 binary64) (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (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 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1 binary64))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) #s(literal -1 binary64)))
(sin.f64 th)
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))))
(*.f64 (/.f64 #s(literal -2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (*.f64 (sin.f64 (*.f64 (-.f64 (-.f64 th ky) (+.f64 th ky)) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (+.f64 (-.f64 th ky) (+.f64 th ky)) #s(literal 1/2 binary64)))) #s(literal 2 binary64)))
(*.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 #s(literal 1/2 binary64) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 ky))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64))) #s(literal 1 binary64)) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sin.f64 ky)))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))) (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))) (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))))
(*.f64 (/.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (/.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) #s(literal -1 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))
(*.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 1/2 binary64))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th)) (pow.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky))))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 ky))) (/.f64 (sin.f64 th) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)))))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sqrt.f64 (sin.f64 ky))) (/.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1/2 binary64)) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))))
(*.f64 (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 ky))) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 ky))))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 ky))) (*.f64 (sin.f64 th) (sqrt.f64 (sin.f64 ky))))
(*.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (/.f64 #s(literal 1 binary64) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 (neg.f64 (sin.f64 th)) (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 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))) (neg.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64))) (neg.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))
(/.f64 (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal 2 binary64))
(/.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64)) (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 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) (neg.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (*.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)) (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (neg.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(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 th) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (/.f64 (cos.f64 (+.f64 th ky)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(-.f64 (/.f64 (*.f64 (cos.f64 (-.f64 th ky)) #s(literal 1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (*.f64 (cos.f64 (+.f64 th ky)) #s(literal 1/2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 ky))) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (sin.f64 ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(-.f64 #s(literal 0 binary64) (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) #s(literal -1/2 binary64))
(*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) #s(literal 1/2 binary64))
(*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sin.f64 th))
(pow.f64 (pow.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 th ky)) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 (+.f64 th ky)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 (-.f64 th ky)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (-.f64 th ky)) #s(literal 1/2 binary64)) (fma.f64 (*.f64 (cos.f64 (+.f64 th ky)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (+.f64 th ky)) #s(literal 1/2 binary64)) (*.f64 (*.f64 (cos.f64 (-.f64 th ky)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (+.f64 th ky)) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))))) #s(literal 2 binary64))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky)))) #s(literal -2 binary64))
(/.f64 (-.f64 (*.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cos.f64 (+.f64 th ky)))) #s(literal 4 binary64))
(/.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 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal -1 binary64))))
(fma.f64 (cos.f64 (-.f64 th ky)) #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (+.f64 th ky)) #s(literal 1/2 binary64))))
(-.f64 (/.f64 (cos.f64 (-.f64 ky th)) #s(literal 2 binary64)) (*.f64 (cos.f64 (+.f64 th ky)) #s(literal 1/2 binary64)))
(-.f64 (*.f64 (cos.f64 (-.f64 th ky)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (+.f64 th ky)) #s(literal 1/2 binary64)))
(+.f64 (*.f64 (cos.f64 (-.f64 th ky)) #s(literal 1/2 binary64)) (neg.f64 (*.f64 (cos.f64 (+.f64 th ky)) #s(literal 1/2 binary64))))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal -1/2 binary64)) (pow.f64 #s(literal 1/2 binary64) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))
(*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(pow.f64 (exp.f64 #s(literal -1 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
(/.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
(/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal 1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 ky)))
(exp.f64 (neg.f64 (log.f64 (sin.f64 ky))))
(exp.f64 (fma.f64 (log.f64 (sin.f64 ky)) #s(literal -1/2 binary64) (*.f64 (log.f64 (sin.f64 ky)) #s(literal -1/2 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal -1/2 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))) #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 (*.f64 (log.f64 (sin.f64 ky)) #s(literal -1 binary64)))
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
(*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))))
(*.f64 #s(literal -1 binary64) (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))
(pow.f64 (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))))
(/.f64 #s(literal 1 binary64) (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal 1 binary64)))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(neg.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))) #s(literal -1 binary64)))
#s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))
(*.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 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(sin.f64 kx)
(exp.f64 (log.f64 (sin.f64 kx)))

eval208.0ms (1.8%)

Memory
30.8MiB live, 217.8MiB allocated
Compiler

Compiled 25 777 to 2 927 computations (88.6% saved)

prune259.0ms (2.3%)

Memory
-29.5MiB live, 136.3MiB allocated
Pruning

63 alts after pruning (58 fresh and 5 done)

PrunedKeptTotal
New94434978
Fresh52429
Picked325
Done134
Total953631 016
Accuracy
100.0%
Counts
1 016 → 63
Alt Table
Click to see full alt table
StatusAccuracyProgram
33.2%
(/.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))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
17.9%
(/.f64 (/.f64 (sin.f64 th) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
31.5%
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
16.4%
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
99.4%
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
55.8%
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
73.9%
(/.f64 (*.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
97.4%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
75.9%
(/.f64 (*.f64 (sin.f64 th) (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)))
31.5%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
55.9%
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
99.6%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
17.9%
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sin.f64 ky)))
30.6%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
99.6%
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
32.7%
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
30.6%
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
53.9%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
44.9%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
99.5%
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (sin.f64 ky))) (sin.f64 th))
99.4%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
75.9%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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))
84.8%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
51.7%
(*.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))
85.1%
(*.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))
43.1%
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
46.1%
(*.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))
27.8%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
32.7%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
32.7%
(*.f64 (/.f64 #s(approx (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
99.5%
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
25.1%
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
12.7%
(*.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1/2 binary64)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
17.9%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
30.7%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))))
31.4%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
31.6%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
22.1%
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
54.4%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 ky ky) #s(literal -1/120 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
54.2%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
22.1%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
54.2%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
21.0%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
53.8%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
22.7%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
18.5%
(*.f64 #s(approx (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (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))
30.6%
(*.f64 #s(approx (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
44.9%
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
19.6%
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
43.4%
#s(approx (/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (*.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)))))))
25.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
25.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal -1/6 binary64) th)))
12.8%
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
12.6%
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
9.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
5.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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 2 985 to 2 229 computations (25.3% saved)

simplify176.0ms (1.6%)

Memory
33.5MiB live, 72.4MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f64 th)
cost-diff0
(neg.f64 (sin.f64 th))
cost-diff0
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
cost-diff3
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
cost-diff0
#s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))
cost-diff0
(neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky)))
cost-diff0
(*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th))
cost-diff3
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
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))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
cost-diff0
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
cost-diff0
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
cost-diff2
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
cost-diff0
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
cost-diff0
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
054381
089341
1142338
2271329
3513329
41002329
51665329
62609329
73154329
83409329
93738329
104100329
114199329
124265329
134291329
144347329
154445329
164691329
174695329
184695329
194775329
204775329
04775326
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(sin.f64 ky)
ky
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(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)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
#s(literal -1/6 binary64)
(*.f64 th th)
th
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))
(/.f64 #s(literal 1 binary64) ky)
#s(literal 1 binary64)
ky
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th))
(neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky)))
#s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky)
(pow.f64 ky #s(literal 3 binary64))
ky
#s(literal 3 binary64)
(fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))
(*.f64 ky ky)
#s(literal 1/120 binary64)
#s(literal -1/6 binary64)
(sin.f64 th)
th
(/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
#s(literal -1 binary64)
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
(sin.f64 ky)
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (sin.f64 th))
(sin.f64 th)
th
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(literal -1 binary64)
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
(sin.f64 ky)
ky
#s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))
(/.f64 #s(literal 1 binary64) ky)
#s(literal 1 binary64)
Outputs
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(sin.f64 ky)
ky
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(hypot.f64 (sin.f64 kx) (sin.f64 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)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th 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) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
#s(literal -1/6 binary64)
(*.f64 th th)
th
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))
(/.f64 #s(literal 1 binary64) ky)
#s(literal 1 binary64)
ky
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))
(*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))
(neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky)))
(neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))
#s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))
#s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky)
(fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)
(pow.f64 ky #s(literal 3 binary64))
ky
#s(literal 3 binary64)
(fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))
(fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64))
(*.f64 ky ky)
#s(literal 1/120 binary64)
#s(literal -1/6 binary64)
(sin.f64 th)
th
(/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
#s(literal -1 binary64)
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
(sin.f64 ky)
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(neg.f64 (sin.f64 th))
(sin.f64 th)
th
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(literal -1 binary64)
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
(sin.f64 ky)
ky
#s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))
(/.f64 #s(literal 1 binary64) ky)
#s(literal 1 binary64)

localize402.0ms (3.6%)

Memory
-32.7MiB live, 286.6MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.1875
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
accuracy0.28515625
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
accuracy0.3125
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
accuracy27.97619338439629
#s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))
accuracy0.22265625
(*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th))
accuracy1.6935968675681026
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
accuracy27.762592812026902
#s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))
accuracy48.14628695124466
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
accuracy0.2578125
(/.f64 (sin.f64 th) (sin.f64 kx))
accuracy0.3125
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
accuracy27.97619338439629
#s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))
accuracy44.39039405880539
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
accuracy0.05859375
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
accuracy0.17578125
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
accuracy34.31009491940281
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
accuracy47.90715390865931
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
accuracy0.00390625
(sin.f64 kx)
accuracy0.0625
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
accuracy0.25390625
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
accuracy0.28125
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
Samples
360.0ms256×0valid
Compiler

Compiled 330 to 46 computations (86.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 314.0ms
ival-mult: 180.0ms (57.3% of total)
ival-div: 38.0ms (12.1% of total)
ival-sin: 35.0ms (11.1% of total)
ival-pow2: 30.0ms (9.6% of total)
ival-hypot: 8.0ms (2.5% of total)
const: 8.0ms (2.5% of total)
ival-pow: 6.0ms (1.9% of total)
ival-add: 5.0ms (1.6% of total)
ival-sqrt: 2.0ms (0.6% of total)
ival-neg: 2.0ms (0.6% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series41.0ms (0.4%)

Memory
22.6MiB live, 63.2MiB allocated
Counts
23 → 105
Calls
Call 1
Inputs
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(sin.f64 ky)
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
(*.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))) #s(approx (pow (sin ky) -1) (/.f64 #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)
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th))
(neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky)))
#s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(neg.f64 (sin.f64 th))
(sin.f64 kx)
#s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
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 ky) (sin th))
(+ (* 1/2 (/ (pow kx 2) (* (sin ky) (sin th)))) (/ (sin ky) (sin th)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (* (sin ky) (sin th)))) (* 1/2 (/ 1 (* (sin ky) (sin th)))))) (/ (sin ky) (sin th)))
(+ (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (* (sin ky) (sin th)))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (* (sin ky) (sin th)))))) (* 1/2 (/ 1 (* (sin ky) (sin th)))))) (/ (sin ky) (sin th)))
(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 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)
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))))
(/ -1 (sin ky))
(- (* 1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* -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 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (/ 1 (sin th)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sqrt (+ (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 kx)
(* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(/ (* 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
(* 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) (sin th))
(+ (* 1/2 (/ (pow ky 2) (* (sin kx) (sin th)))) (/ (sin kx) (sin th)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (* (sin kx) (sin th)))) (* 1/2 (/ 1 (* (sin kx) (sin th)))))) (/ (sin kx) (sin th)))
(+ (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (* (sin kx) (sin th)))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (* (sin kx) (sin th)))))) (* 1/2 (/ 1 (* (sin kx) (sin th)))))) (/ (sin kx) (sin th)))
(+ (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 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 (* ky (sin th)))
(* ky (+ (* -1 (sin th)) (* 1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* -1/120 (* (pow ky 2) (sin th))) (* 1/6 (sin th))))))
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* 1/6 (sin th)) (* (pow ky 2) (+ (* -1/120 (sin th)) (* 1/5040 (* (pow ky 2) (sin th)))))))))
(* -1 ky)
(* ky (- (* 1/6 (pow ky 2)) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* -1/120 (pow ky 2)))) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* (pow ky 2) (- (* 1/5040 (pow ky 2)) 1/120)))) 1))
(/ 1 ky)
(/ (+ 1 (* 1/6 (pow ky 2))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* 7/360 (pow ky 2))))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* (pow ky 2) (+ 7/360 (* 31/15120 (pow ky 2))))))) ky)
(/ -1 (sin kx))
(- (* 1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/2 (* (pow ky 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/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(* -1 (* (sin ky) (sin th)))
(* -1 (sin ky))
(/ 1 (sin ky))
(* (* 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))))))))))))
(* (/ 1 th) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* 1/6 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) th)
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (pow th 2) (+ (* 7/360 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/6 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))))) th)
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (pow th 2) (+ (* 1/6 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* 31/15120 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 7/360 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))) th)
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/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))))
(* -1 (* th (sin ky)))
(* th (+ (* -1 (sin ky)) (* 1/6 (* (pow th 2) (sin ky)))))
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* -1/120 (* (pow th 2) (sin ky))) (* 1/6 (sin ky))))))
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* 1/6 (sin ky)) (* (pow th 2) (+ (* -1/120 (sin ky)) (* 1/5040 (* (pow th 2) (sin ky)))))))))
(* -1 th)
(* th (- (* 1/6 (pow th 2)) 1))
(* th (- (* (pow th 2) (+ 1/6 (* -1/120 (pow th 2)))) 1))
(* th (- (* (pow th 2) (+ 1/6 (* (pow th 2) (- (* 1/5040 (pow th 2)) 1/120)))) 1))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1 (sin th))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Calls

9 calls:

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

simplify180.0ms (1.6%)

Memory
10.7MiB live, 271.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05672748
117972575
266412474
080262284
Stop Event
iter limit
node limit
Counts
105 → 102
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 ky) (sin th))
(+ (* 1/2 (/ (pow kx 2) (* (sin ky) (sin th)))) (/ (sin ky) (sin th)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (* (sin ky) (sin th)))) (* 1/2 (/ 1 (* (sin ky) (sin th)))))) (/ (sin ky) (sin th)))
(+ (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (* (sin ky) (sin th)))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (* (sin ky) (sin th)))))) (* 1/2 (/ 1 (* (sin ky) (sin th)))))) (/ (sin ky) (sin th)))
(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 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)
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))))
(/ -1 (sin ky))
(- (* 1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(- (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* -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 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (/ 1 (sin th)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sqrt (+ (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 kx)
(* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(/ (* 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
(* 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) (sin th))
(+ (* 1/2 (/ (pow ky 2) (* (sin kx) (sin th)))) (/ (sin kx) (sin th)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (* (sin kx) (sin th)))) (* 1/2 (/ 1 (* (sin kx) (sin th)))))) (/ (sin kx) (sin th)))
(+ (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (* (sin kx) (sin th)))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (* (sin kx) (sin th)))))) (* 1/2 (/ 1 (* (sin kx) (sin th)))))) (/ (sin kx) (sin th)))
(+ (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 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 (* ky (sin th)))
(* ky (+ (* -1 (sin th)) (* 1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* -1/120 (* (pow ky 2) (sin th))) (* 1/6 (sin th))))))
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* 1/6 (sin th)) (* (pow ky 2) (+ (* -1/120 (sin th)) (* 1/5040 (* (pow ky 2) (sin th)))))))))
(* -1 ky)
(* ky (- (* 1/6 (pow ky 2)) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* -1/120 (pow ky 2)))) 1))
(* ky (- (* (pow ky 2) (+ 1/6 (* (pow ky 2) (- (* 1/5040 (pow ky 2)) 1/120)))) 1))
(/ 1 ky)
(/ (+ 1 (* 1/6 (pow ky 2))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* 7/360 (pow ky 2))))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* (pow ky 2) (+ 7/360 (* 31/15120 (pow ky 2))))))) ky)
(/ -1 (sin kx))
(- (* 1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(- (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/2 (* (pow ky 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/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(* -1 (* (sin ky) (sin th)))
(* -1 (sin ky))
(/ 1 (sin ky))
(* (* 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))))))))))))
(* (/ 1 th) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* 1/6 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) th)
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (pow th 2) (+ (* 7/360 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/6 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))))) th)
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (pow th 2) (+ (* 1/6 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* 31/15120 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 7/360 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))) th)
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/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))))
(* -1 (* th (sin ky)))
(* th (+ (* -1 (sin ky)) (* 1/6 (* (pow th 2) (sin ky)))))
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* -1/120 (* (pow th 2) (sin ky))) (* 1/6 (sin ky))))))
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* 1/6 (sin ky)) (* (pow th 2) (+ (* -1/120 (sin ky)) (* 1/5040 (* (pow th 2) (sin ky)))))))))
(* -1 th)
(* th (- (* 1/6 (pow th 2)) 1))
(* th (- (* (pow th 2) (+ 1/6 (* -1/120 (pow th 2)))) 1))
(* th (- (* (pow th 2) (+ 1/6 (* (pow th 2) (- (* 1/5040 (pow th 2)) 1/120)))) 1))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1 (sin th))
(* -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 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 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.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 (*.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) (* (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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/2 binary64) (*.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)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.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 th)))
(/ (sin ky) (sin th))
(/.f64 (sin.f64 ky) (sin.f64 th))
(+ (* 1/2 (/ (pow kx 2) (* (sin ky) (sin th)))) (/ (sin ky) (sin th)))
(fma.f64 (/.f64 (*.f64 kx kx) (sin.f64 th)) (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (* (sin ky) (sin th)))) (* 1/2 (/ 1 (* (sin ky) (sin th)))))) (/ (sin ky) (sin th)))
(fma.f64 (fma.f64 (/.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)) (sin.f64 th)) (*.f64 kx (/.f64 kx (sin.f64 ky))) (/.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 th)) (sin.f64 ky))) (*.f64 kx kx) (/.f64 (sin.f64 ky) (sin.f64 th)))
(+ (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (* (sin ky) (sin th)))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (* (sin ky) (sin th)))))) (* 1/2 (/ 1 (* (sin ky) (sin th)))))) (/ (sin ky) (sin th)))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (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)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (*.f64 (/.f64 kx (sin.f64 th)) (/.f64 kx (sin.f64 ky)))) #s(literal 1/2 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)) (*.f64 (sin.f64 th) (sin.f64 ky)))) (fma.f64 (/.f64 (*.f64 kx kx) (sin.f64 th)) (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) (/.f64 (sin.f64 ky) (sin.f64 th))))
(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 (fma.f64 (/.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)) (sin.f64 ky)) (*.f64 kx kx) (/.f64 #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)) (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)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (*.f64 kx (/.f64 kx (sin.f64 ky)))) #s(literal 1/2 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)) (sin.f64 ky))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))
(/ (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 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 3 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 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (+.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))))) (/.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))) (* (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 (*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 #s(literal 1/2 binary64) (*.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)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.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))))) (/.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 (neg.f64 (*.f64 (sin.f64 th) (fma.f64 #s(literal -7/360 binary64) (*.f64 kx kx) #s(literal -1/6 binary64)))) (*.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 (fma.f64 (*.f64 (*.f64 (sin.f64 th) #s(literal -31/15120 binary64)) kx) (neg.f64 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)
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)) (fma.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)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)
(/ -1 (sin ky))
(/.f64 #s(literal -1 binary64) (sin.f64 ky))
(- (* 1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (*.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 ky)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(- (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))) (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* -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 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (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))))) (*.f64 #s(literal -1/2 binary64) (+.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))))))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (/.f64 #s(literal -1 binary64) (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)))
(* (/ 1 (sin th)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (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 kx)
(sin.f64 kx)
(* -1 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(neg.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))))))
(/ (* 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))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.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))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (*.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 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.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))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (+.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 (fma.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (fma.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))))) #s(literal -1/2 binary64) (*.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)))) #s(literal -1/12 binary64))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/5040 binary64) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky)))) (*.f64 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
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)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #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)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)
(/ (sin kx) (sin th))
(/.f64 (sin.f64 kx) (sin.f64 th))
(+ (* 1/2 (/ (pow ky 2) (* (sin kx) (sin th)))) (/ (sin kx) (sin th)))
(fma.f64 (/.f64 (*.f64 ky ky) (sin.f64 th)) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (/.f64 (sin.f64 kx) (sin.f64 th)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (* (sin kx) (sin th)))) (* 1/2 (/ 1 (* (sin kx) (sin th)))))) (/ (sin kx) (sin th)))
(fma.f64 (fma.f64 (/.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)) (sin.f64 th)) (*.f64 ky (/.f64 ky (sin.f64 kx))) (/.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 th)) (sin.f64 kx))) (*.f64 ky ky) (/.f64 (sin.f64 kx) (sin.f64 th)))
(+ (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (* (sin kx) (sin th)))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (* (sin kx) (sin th)))))) (* 1/2 (/ 1 (* (sin kx) (sin th)))))) (/ (sin kx) (sin th)))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (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)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (*.f64 (/.f64 ky (sin.f64 th)) (/.f64 ky (sin.f64 kx)))) #s(literal 1/2 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)) (*.f64 (sin.f64 th) (sin.f64 kx)))) (fma.f64 (/.f64 (*.f64 ky ky) (sin.f64 th)) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(+ (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 (fma.f64 (/.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)) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #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)) (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)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (*.f64 ky (/.f64 ky (sin.f64 kx)))) #s(literal 1/2 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)) (sin.f64 kx))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (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 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (*.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 (*.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)))
(+ (* (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 (*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) ky) ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 kx) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 ky ky)) (*.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)) (*.f64 #s(literal 1/2 binary64) (*.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 (sin.f64 th) (sin.f64 kx))))
(* -1 (* ky (sin th)))
(*.f64 (neg.f64 ky) (sin.f64 th))
(* ky (+ (* -1 (sin th)) (* 1/6 (* (pow ky 2) (sin th)))))
(*.f64 (*.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64))) ky)
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* -1/120 (* (pow ky 2) (sin th))) (* 1/6 (sin th))))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sin.f64 th) (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64))) (*.f64 (neg.f64 ky) (sin.f64 th)))
(* ky (+ (* -1 (sin th)) (* (pow ky 2) (+ (* 1/6 (sin th)) (* (pow ky 2) (+ (* -1/120 (sin th)) (* 1/5040 (* (pow ky 2) (sin th)))))))))
(*.f64 (fma.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) (*.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 th) (fma.f64 #s(literal 1/5040 binary64) (*.f64 ky ky) #s(literal -1/120 binary64))))) ky)
(* -1 ky)
(neg.f64 ky)
(* ky (- (* 1/6 (pow ky 2)) 1))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)
(* ky (- (* (pow ky 2) (+ 1/6 (* -1/120 (pow ky 2)))) 1))
(*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)
(* ky (- (* (pow ky 2) (+ 1/6 (* (pow ky 2) (- (* 1/5040 (pow ky 2)) 1/120)))) 1))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 ky ky) #s(literal -1/120 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)
(/ 1 ky)
(/.f64 #s(literal 1 binary64) ky)
(/ (+ 1 (* 1/6 (pow ky 2))) ky)
(/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* 7/360 (pow ky 2))))) ky)
(/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* (pow ky 2) (+ 7/360 (* 31/15120 (pow ky 2))))))) ky)
(/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(/ -1 (sin kx))
(/.f64 #s(literal -1 binary64) (sin.f64 kx))
(- (* 1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) ky) ky (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(- (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/2 binary64)) (*.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 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)))
(- (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/2 (* (pow ky 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/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 kx) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (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))))) (*.f64 #s(literal -1/2 binary64) (+.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))))))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) ky) ky (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(* -1 (* (sin ky) (sin th)))
(*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))
(* -1 (sin ky))
(neg.f64 (sin.f64 ky))
(/ 1 (sin ky))
(/.f64 #s(literal 1 binary64) (sin.f64 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 (*.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)))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 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))))) (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 th th) #s(literal -1/6 binary64) #s(literal 1 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))))) (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))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))))) th)
(* (/ 1 th) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* 1/6 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) th)
(/.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (pow th 2) (+ (* 7/360 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/6 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))))) th)
(/.f64 (fma.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (fma.f64 (*.f64 th th) #s(literal 7/360 binary64) #s(literal 1/6 binary64))) (*.f64 th th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)
(/ (+ (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (pow th 2) (+ (* 1/6 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* 31/15120 (* (pow th 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 7/360 (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))) th)
(/.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (fma.f64 (*.f64 th th) #s(literal 31/15120 binary64) #s(literal 7/360 binary64))))) th)
th
(* th (+ 1 (* -1/6 (pow th 2))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th)
(* -1/6 (pow th 2))
(*.f64 (*.f64 th th) #s(literal -1/6 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 (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 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 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 (*.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)) (*.f64 (*.f64 th th) (*.f64 (*.f64 th th) #s(literal 1/120 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 (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 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) th)
(/ th (sin kx))
(/.f64 th (sin.f64 kx))
(* th (+ (* -1/6 (/ (pow th 2) (sin kx))) (/ 1 (sin kx))))
(+.f64 (/.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)) (sin.f64 kx)) (/.f64 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 (pow.f64 th #s(literal 3 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (/.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 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th (/.f64 th (sin.f64 kx))) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (/.f64 #s(literal -1/6 binary64) (sin.f64 kx))) (/.f64 th (sin.f64 kx)))
(* -1 (* th (sin ky)))
(*.f64 (neg.f64 th) (sin.f64 ky))
(* th (+ (* -1 (sin ky)) (* 1/6 (* (pow th 2) (sin ky)))))
(*.f64 (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal -1 binary64))) th)
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* -1/120 (* (pow th 2) (sin ky))) (* 1/6 (sin ky))))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/120 binary64) #s(literal 1/6 binary64))) (*.f64 (neg.f64 th) (sin.f64 ky)))
(* th (+ (* -1 (sin ky)) (* (pow th 2) (+ (* 1/6 (sin ky)) (* (pow th 2) (+ (* -1/120 (sin ky)) (* 1/5040 (* (pow th 2) (sin ky)))))))))
(*.f64 (fma.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal -1 binary64)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/5040 binary64) #s(literal -1/120 binary64))))) th)
(* -1 th)
(neg.f64 th)
(* th (- (* 1/6 (pow th 2)) 1))
(*.f64 (fma.f64 (*.f64 th th) #s(literal 1/6 binary64) #s(literal -1 binary64)) th)
(* th (- (* (pow th 2) (+ 1/6 (* -1/120 (pow th 2)))) 1))
(*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal -1 binary64)) th)
(* th (- (* (pow th 2) (+ 1/6 (* (pow th 2) (- (* 1/5040 (pow th 2)) 1/120)))) 1))
(*.f64 (fma.f64 (fma.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/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 (/.f64 #s(literal 1 binary64) th) th) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64)))
(* -1 (sin th))
(neg.f64 (sin.f64 th))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
(*.f64 (neg.f64 (-.f64 #s(literal 1/6 binary64) (/.f64 (/.f64 #s(literal 1 binary64) th) th))) (pow.f64 th #s(literal 3 binary64)))

rewrite198.0ms (1.8%)

Memory
14.7MiB live, 331.5MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
054285
089252
1321242
21859242
08630239
Stop Event
iter limit
node limit
iter limit
Counts
23 → 452
Calls
Call 1
Inputs
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(sin.f64 ky)
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
(*.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))) #s(approx (pow (sin ky) -1) (/.f64 #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)
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th))
(neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky)))
#s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(neg.f64 (sin.f64 th))
(sin.f64 kx)
#s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 1 binary64)) (/.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (sin.f64 th)) #s(literal -1 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) (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 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (neg.f64 (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sin.f64 ky) (neg.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)))))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(pow.f64 (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) (sin.f64 ky)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 ky) (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 ky) (sin.f64 kx)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (neg.f64 (sin.f64 th))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (neg.f64 (sin.f64 th))))
(/.f64 (neg.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (neg.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (neg.f64 (sin.f64 th))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) (sin.f64 ky)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) (sin.f64 ky)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) (sin.f64 ky)) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) (sin.f64 ky))))
(/.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (neg.f64 (sin.f64 th)))) (/.f64 (neg.f64 (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) (sin.f64 ky))) #s(literal -1 binary64)))
(*.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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(sin.f64 ky)
(exp.f64 (log.f64 (sin.f64 ky)))
(*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 th)) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(*.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 th))) #s(literal -1 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(*.f64 (pow.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (pow.f64 (neg.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
(*.f64 #s(literal -1 binary64) (pow.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (neg.f64 (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (neg.f64 (sin.f64 th))))
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(pow.f64 (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) #s(literal 1 binary64))
(/.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 1 binary64))) (neg.f64 (sin.f64 th)))
(/.f64 (neg.f64 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 1 binary64))) (neg.f64 (sin.f64 th)))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 th)))))
(/.f64 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 1 binary64)) (sin.f64 th))
(/.f64 (neg.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 1 binary64)) (sin.f64 th))
(/.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (neg.f64 (neg.f64 (sin.f64 th))))
(/.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))
(neg.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (neg.f64 (sin.f64 th))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 th))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (neg.f64 (sin.f64 th))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) #s(literal -1 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 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/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 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/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 (pow.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 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (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 binary64))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (pow.f64 (pow.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 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (pow.f64 (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 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 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #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 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #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 (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 ky) (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 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 (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 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 ky) (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 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 #s(literal 1 binary64) (sqrt.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 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.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 ky) (sin.f64 kx)) #s(literal 2 binary64))) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.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 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(exp.f64 (*.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)))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(*.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (pow.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) #s(literal -1 binary64)))
(*.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64))) (pow.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (-.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))) #s(literal -1 binary64)))
(*.f64 th (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(pow.f64 (/.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th))) #s(literal -1 binary64))
(pow.f64 (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (-.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))) (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64)))) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (/.f64 (*.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (fma.f64 (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (*.f64 (/.f64 (*.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))))
(/.f64 (neg.f64 (-.f64 (*.f64 th th) (*.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64)))) (neg.f64 (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (-.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))))))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (*.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (*.f64 th th))) (*.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))))
(/.f64 (-.f64 (*.f64 th th) (*.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th))) (neg.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64)))) (neg.f64 (fma.f64 th th (-.f64 (*.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64)) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64)))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64)))) (neg.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (-.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64)))))))
(/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))
(/.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64))) (fma.f64 th th (-.f64 (*.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64)) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))))
(/.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64))) (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (-.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (-.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))) (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (-.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))) (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64))))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) th) (*.f64 th th) th)
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(fma.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) th th)
(fma.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) th) th)
(fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)
(fma.f64 th (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) th)
(-.f64 (/.f64 (*.f64 th th) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))) (/.f64 (*.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64)) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(-.f64 (/.f64 (*.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))))
(+.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)) th)
(+.f64 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(*.f64 (*.f64 #s(literal -1/6 binary64) th) th)
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
(*.f64 th (*.f64 #s(literal -1/6 binary64) th))
(*.f64 (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64)) (pow.f64 (pow.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64)) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (neg.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) #s(literal -1 binary64)))
(*.f64 #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))) #s(approx (pow (sin ky) -1) (pow.f64 ky #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))) (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64)))
(pow.f64 (/.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(literal 1 binary64))) (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))) (neg.f64 (neg.f64 (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))))
(/.f64 (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(literal 1 binary64)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))
(/.f64 (neg.f64 (neg.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))))) (neg.f64 (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))))
(/.f64 (neg.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))) (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #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 (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))
(neg.f64 (/.f64 (neg.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(neg.f64 (/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #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))) (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))))) #s(literal -1 binary64)))
#s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (sin.f64 kx))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 th)) (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 #s(literal -1 binary64) (/.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))))
(*.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(pow.f64 (/.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx))) #s(literal 3 binary64)) (pow.f64 (/.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) #s(literal 3 binary64))) (fma.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx))) (fma.f64 (/.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (*.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx))) (/.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (sin.f64 kx)))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sin.f64 kx))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 th)))) (neg.f64 (neg.f64 (neg.f64 (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 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sin.f64 kx) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (sin.f64 kx) (sin.f64 th)) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sin.f64 kx) (sin.f64 th))))
(/.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 #s(literal 0 binary64) (neg.f64 (sin.f64 kx))) (/.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 kx) (sin.f64 th))) #s(literal -1 binary64)))
(sin.f64 th)
(*.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(literal -1 binary64))
(*.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) #s(literal -1 binary64)) (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (/.f64 (sin.f64 th) #s(literal 1 binary64)))
(*.f64 (/.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) #s(literal -1 binary64)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (/.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (/.f64 (sin.f64 th) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (/.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) (neg.f64 (sin.f64 th))) (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (/.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (/.f64 (*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))))
(*.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(*.f64 (sin.f64 th) (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(pow.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) (neg.f64 (sin.f64 th)))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))) (neg.f64 (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))) (neg.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) #s(literal 1 binary64))) (neg.f64 (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) #s(literal 1 binary64))) (neg.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) (neg.f64 (sin.f64 th))))) (neg.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))) (neg.f64 (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))) (neg.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))) (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(/.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) #s(literal 1 binary64)) (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) #s(literal 1 binary64)) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) (neg.f64 (sin.f64 th)))) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) (neg.f64 (sin.f64 th))) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) (neg.f64 (sin.f64 th)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) (neg.f64 (sin.f64 th))))))
(neg.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (sin.f64 th))))
(neg.f64 (*.f64 (*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(neg.f64 (*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64))) (/.f64 (*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (sin.f64 th)) (*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)) #s(literal -1 binary64))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))) (/.f64 (*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (sin.f64 th)) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
(*.f64 (neg.f64 (sin.f64 th)) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))
(*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) (sin.f64 th))
(*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (neg.f64 (sin.f64 th)))
(*.f64 #s(literal -1 binary64) (*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (sin.f64 th)))
(*.f64 (sin.f64 th) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (sin.f64 th)) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (sin.f64 th)) (*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (sin.f64 th)) (*.f64 #s(literal 0 binary64) (*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (sin.f64 th))))))
(neg.f64 (*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (sin.f64 th)))
(-.f64 #s(literal 0 binary64) (*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) (sin.f64 th)))
(*.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))) (*.f64 #s(literal 0 binary64) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (pow.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) #s(literal 2 binary64)))) (neg.f64 (+.f64 #s(literal 0 binary64) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (pow.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) #s(literal 3 binary64)))) (neg.f64 (+.f64 #s(literal 0 binary64) (+.f64 (pow.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) #s(literal 2 binary64)) (*.f64 #s(literal 0 binary64) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) #s(literal 2 binary64))) (+.f64 #s(literal 0 binary64) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (+.f64 (pow.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) #s(literal 2 binary64)) (*.f64 #s(literal 0 binary64) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))))
(neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))
(-.f64 (/.f64 #s(literal 0 binary64) (+.f64 #s(literal 0 binary64) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))) (/.f64 (pow.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) #s(literal 2 binary64)) (+.f64 #s(literal 0 binary64) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))))
(-.f64 (/.f64 #s(literal 0 binary64) (+.f64 #s(literal 0 binary64) (+.f64 (pow.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) #s(literal 2 binary64)) (*.f64 #s(literal 0 binary64) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))))) (/.f64 (pow.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) #s(literal 3 binary64)) (+.f64 #s(literal 0 binary64) (+.f64 (pow.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)) #s(literal 2 binary64)) (*.f64 #s(literal 0 binary64) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))))))
(-.f64 #s(literal 0 binary64) #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)))
(+.f64 #s(literal 0 binary64) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
#s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))
(*.f64 (/.f64 (neg.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 #s(literal -1 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 (/.f64 #s(literal -1 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 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) (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 #s(literal 1 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 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (pow.f64 (pow.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64)) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (neg.f64 (neg.f64 (sin.f64 th))) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) #s(literal 1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1 binary64))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (sin.f64 th) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (pow.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 th)))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (neg.f64 (sin.f64 th))))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (sin.f64 th) (neg.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (sin.f64 th) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 th)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1 binary64))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 3 binary64))) (fma.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (fma.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 th)))) (neg.f64 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 th)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64))) (neg.f64 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 th))))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (sin.f64 th) #s(literal 1 binary64)))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (sin.f64 th) #s(literal 1 binary64)))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 th)))))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 th))))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 th)))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))) (*.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (-.f64 #s(literal 0 binary64) (neg.f64 (neg.f64 (sin.f64 th)))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 th))) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64)) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 th)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 th)))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (neg.f64 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(/.f64 (neg.f64 (sin.f64 th)) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 th))))))
(/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (neg.f64 (sin.f64 th))))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (neg.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 (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 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 (/.f64 #s(literal -1 binary64) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (neg.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(*.f64 (/.f64 (neg.f64 (neg.f64 (sin.f64 th))) #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64)) (/.f64 (neg.f64 (neg.f64 (sin.f64 th))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64)) (/.f64 (sin.f64 th) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(*.f64 (pow.f64 (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (neg.f64 (neg.f64 (sin.f64 th)))) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (neg.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(*.f64 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(*.f64 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (neg.f64 (sin.f64 th)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) #s(literal -1 binary64)))
(*.f64 (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 th)) (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64))))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(*.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(*.f64 #s(literal -1 binary64) (*.f64 (sin.f64 th) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))))
(pow.f64 (*.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (neg.f64 (sin.f64 th))) (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64)))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (neg.f64 (sin.f64 th))) #s(literal 1 binary64))) (neg.f64 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))))
(/.f64 (*.f64 (neg.f64 (neg.f64 (sin.f64 th))) (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 th)))) (neg.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (*.f64 (neg.f64 (neg.f64 (sin.f64 th))) #s(literal 1 binary64)) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (neg.f64 (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))))
(/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))))
(neg.f64 (/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(neg.f64 (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(literal -1 binary64))))
(neg.f64 (*.f64 (sin.f64 th) (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))))
(-.f64 (/.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (neg.f64 (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))) (/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))) (/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(-.f64 (/.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))))) (/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(-.f64 (/.f64 #s(literal 0 binary64) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (/.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th)))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (sin.f64 th))
(*.f64 (sin.f64 th) #s(literal -1 binary64))
(/.f64 (+.f64 #s(literal 0 binary64) (pow.f64 (neg.f64 (sin.f64 th)) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (-.f64 (*.f64 (neg.f64 (sin.f64 th)) (neg.f64 (sin.f64 th))) (*.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 th))))))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (sin.f64 th) #s(literal 2 binary64)))) (neg.f64 (+.f64 #s(literal 0 binary64) (sin.f64 th))))
(/.f64 (neg.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (sin.f64 th) #s(literal 3 binary64)))) (neg.f64 (+.f64 #s(literal 0 binary64) (fma.f64 (sin.f64 th) (sin.f64 th) (*.f64 #s(literal 0 binary64) (sin.f64 th))))))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (sin.f64 th) #s(literal 2 binary64))) (+.f64 #s(literal 0 binary64) (sin.f64 th)))
(/.f64 (-.f64 #s(literal 0 binary64) (pow.f64 (sin.f64 th) #s(literal 3 binary64))) (+.f64 #s(literal 0 binary64) (fma.f64 (sin.f64 th) (sin.f64 th) (*.f64 #s(literal 0 binary64) (sin.f64 th)))))
(neg.f64 (sin.f64 th))
(-.f64 (/.f64 #s(literal 0 binary64) (+.f64 #s(literal 0 binary64) (sin.f64 th))) (/.f64 (pow.f64 (sin.f64 th) #s(literal 2 binary64)) (+.f64 #s(literal 0 binary64) (sin.f64 th))))
(-.f64 (/.f64 #s(literal 0 binary64) (+.f64 #s(literal 0 binary64) (fma.f64 (sin.f64 th) (sin.f64 th) (*.f64 #s(literal 0 binary64) (sin.f64 th))))) (/.f64 (pow.f64 (sin.f64 th) #s(literal 3 binary64)) (+.f64 #s(literal 0 binary64) (fma.f64 (sin.f64 th) (sin.f64 th) (*.f64 #s(literal 0 binary64) (sin.f64 th))))))
(-.f64 #s(literal 0 binary64) (sin.f64 th))
(+.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 th)))
(*.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 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(sin.f64 kx)
(exp.f64 (log.f64 (sin.f64 kx)))
#s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(pow.f64 (/.f64 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(neg.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) #s(literal -1 binary64)))

eval120.0ms (1.1%)

Memory
-17.9MiB live, 218.5MiB allocated
Compiler

Compiled 20 471 to 2 231 computations (89.1% saved)

prune119.0ms (1.1%)

Memory
3.8MiB live, 182.2MiB allocated
Pruning

81 alts after pruning (74 fresh and 7 done)

PrunedKeptTotal
New63127658
Fresh64753
Picked325
Done055
Total64081721
Accuracy
100.0%
Counts
721 → 81
Alt Table
Click to see full alt table
StatusAccuracyProgram
33.2%
(/.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))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
17.9%
(/.f64 (/.f64 (sin.f64 th) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
31.5%
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
16.4%
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
99.4%
(/.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
55.8%
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
73.9%
(/.f64 (*.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
97.4%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
75.9%
(/.f64 (*.f64 (sin.f64 th) (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)))
31.5%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
33.2%
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 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)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
30.6%
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
27.4%
(/.f64 (*.f64 #s(approx (neg (sin th)) (neg.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
99.6%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
17.9%
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sin.f64 ky)))
30.6%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
75.9%
(/.f64 (sin.f64 ky) (/.f64 (/.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)))
25.1%
(/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky)) (sin.f64 th)))
99.4%
(/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
47.0%
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)))
32.8%
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
31.2%
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
31.2%
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
31.2%
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
32.7%
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
30.6%
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
21.5%
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
21.4%
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
30.6%
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
16.5%
(/.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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
21.8%
(/.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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
18.2%
(/.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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
53.9%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
44.9%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
30.6%
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
99.4%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
75.9%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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))
84.8%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
51.7%
(*.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))
43.1%
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
46.1%
(*.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))
27.8%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
32.7%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
15.8%
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
32.7%
(*.f64 (/.f64 #s(approx (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
99.5%
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
25.1%
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
12.7%
(*.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1/2 binary64)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
17.9%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
30.7%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))))
31.4%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
31.6%
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
21.2%
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)))))
54.4%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 ky ky) #s(literal -1/120 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
54.2%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
22.1%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
54.2%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
21.0%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
53.8%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
22.7%
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
99.4%
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))
18.5%
(*.f64 #s(approx (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (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))
30.6%
(*.f64 #s(approx (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
44.9%
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
19.6%
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
43.4%
#s(approx (/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (*.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)))))))
25.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
25.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #s(literal -1/6 binary64) th)))
12.8%
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
12.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
9.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
5.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
5.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) th) th) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
Compiler

Compiled 4 903 to 2 052 computations (58.1% saved)

regimes288.0ms (2.6%)

Memory
-17.6MiB live, 534.6MiB allocated
Counts
105 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (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(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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (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 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1/2 binary64)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 (*.f64 #s(approx (neg (sin th)) (neg.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)))))
(/.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))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 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)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.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 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 #s(approx (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.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 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 ky ky) #s(literal -1/120 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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) (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)))
(/.f64 (sin.f64 ky) (/.f64 (/.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) (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 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
#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)))))))
#s(approx (/ (sin th) (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky))) (*.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 (/.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (sin.f64 ky))) (sin.f64 th))
(*.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 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (*.f64 (sin.f64 th) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.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 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th))
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.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 (*.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 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
(*.f64 (*.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))))) (sin.f64 th))
Outputs
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
Calls

9 calls:

35.0ms
(sin.f64 th)
33.0ms
(sin.f64 kx)
32.0ms
(sin.f64 ky)
32.0ms
th
31.0ms
kx
Results
AccuracySegmentsBranch
99.6%1kx
99.6%1ky
99.6%1th
99.6%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.6%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.6%1(sin.f64 ky)
99.6%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
99.6%1(sin.f64 kx)
99.6%1(sin.f64 th)
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes274.0ms (2.4%)

Memory
10.6MiB live, 329.9MiB allocated
Counts
84 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (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(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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (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 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1/2 binary64)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 (*.f64 #s(approx (neg (sin th)) (neg.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)))))
(/.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))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 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)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.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 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 #s(approx (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.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 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 ky ky) #s(literal -1/120 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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) (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)))
(/.f64 (sin.f64 ky) (/.f64 (/.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) (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)))
Outputs
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
Calls

9 calls:

45.0ms
ky
45.0ms
th
27.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))
27.0ms
kx
26.0ms
(sin.f64 ky)
Results
AccuracySegmentsBranch
99.4%1kx
99.4%1ky
99.4%1th
99.4%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.4%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.4%1(sin.f64 ky)
99.4%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
99.4%1(sin.f64 kx)
99.4%1(sin.f64 th)
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes227.0ms (2%)

Memory
6.2MiB live, 317.9MiB allocated
Counts
82 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (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(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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (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 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1/2 binary64)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 (*.f64 #s(approx (neg (sin th)) (neg.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)))))
(/.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))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 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)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.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 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 #s(approx (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.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 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 ky ky) #s(literal -1/120 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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) (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)))
(/.f64 (sin.f64 ky) (/.f64 (/.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)))
Outputs
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (sin.f64 th) (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)))
Calls

9 calls:

30.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))
26.0ms
ky
26.0ms
kx
25.0ms
(sin.f64 th)
25.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
93.5%2kx
98.5%2ky
86.8%2th
84.9%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))
99.0%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)))))
98.5%3(sin.f64 ky)
93.5%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
93.5%3(sin.f64 kx)
86.7%3(sin.f64 th)
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes44.0ms (0.4%)

Memory
-7.0MiB live, 44.0MiB allocated
Counts
80 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (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(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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (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 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1/2 binary64)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 (*.f64 #s(approx (neg (sin th)) (neg.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)))))
(/.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))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 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)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.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 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 #s(approx (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.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 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 ky ky) #s(literal -1/120 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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))
Outputs
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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

1 calls:

40.0ms
ky
Results
AccuracySegmentsBranch
98.5%2ky
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes247.0ms (2.2%)

Memory
13.8MiB live, 363.6MiB allocated
Counts
79 → 6
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (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(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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (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 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1/2 binary64)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 (*.f64 #s(approx (neg (sin th)) (neg.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)))))
(/.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))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 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)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.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 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 #s(approx (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.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 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 th))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 ky ky) #s(literal -1/120 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
Outputs
(*.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 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.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 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
Calls

9 calls:

48.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))
28.0ms
kx
26.0ms
(sin.f64 ky)
25.0ms
(sin.f64 kx)
24.0ms
(sin.f64 th)
Results
AccuracySegmentsBranch
68.3%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))
76.1%3(sin.f64 th)
75.9%2th
70.9%3(sin.f64 kx)
69.8%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
69.8%2kx
85.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)))))
76.7%3(sin.f64 ky)
78.7%3ky
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes25.0ms (0.2%)

Memory
-2.1MiB live, 34.9MiB allocated
Counts
73 → 6
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (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(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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (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 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1/2 binary64)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 (*.f64 #s(approx (neg (sin th)) (neg.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)))))
(/.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))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 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)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.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 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 #s(approx (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.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))
Outputs
(*.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 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.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 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
Calls

1 calls:

21.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
85.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)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes24.0ms (0.2%)

Memory
0.1MiB live, 36.6MiB allocated
Counts
70 → 6
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (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(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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (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 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1/2 binary64)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 (*.f64 #s(approx (neg (sin th)) (neg.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)))))
(/.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))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 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)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.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 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 #s(approx (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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))
Outputs
(*.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 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
Calls

1 calls:

21.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
85.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)

regimes63.0ms (0.6%)

Memory
2.9MiB live, 85.7MiB allocated
Counts
69 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (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(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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (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 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1/2 binary64)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 (*.f64 #s(approx (neg (sin th)) (neg.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)))))
(/.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))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 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)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.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 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 #s(approx (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 th))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
Outputs
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Calls

3 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)))))
20.0ms
th
19.0ms
ky
Results
AccuracySegmentsBranch
75.3%2th
75.0%2ky
79.4%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 15 to 17 computations (-13.3% saved)

regimes98.0ms (0.9%)

Memory
4.7MiB live, 124.2MiB allocated
Counts
63 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (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(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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (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 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1/2 binary64)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 (*.f64 #s(approx (neg (sin th)) (neg.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)))))
(/.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))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 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)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.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 (sin.f64 ky) #s(literal -1 binary64)))
Outputs
(/.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)))
Calls

5 calls:

23.0ms
(sin.f64 th)
18.0ms
(sin.f64 ky)
18.0ms
ky
18.0ms
th
17.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
73.2%3(sin.f64 th)
77.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)))))
72.9%2ky
73.5%3(sin.f64 ky)
73.2%2th
Compiler

Compiled 19 to 25 computations (-31.6% saved)

regimes144.0ms (1.3%)

Memory
-4.6MiB live, 188.1MiB allocated
Counts
61 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (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(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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (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 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1/2 binary64)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 (*.f64 #s(approx (neg (sin th)) (neg.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)))))
(/.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))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 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)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Outputs
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
Calls

8 calls:

18.0ms
th
18.0ms
(sin.f64 th)
18.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
18.0ms
ky
18.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
60.9%5(sin.f64 kx)
57.3%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
59.5%4kx
65.5%3(sin.f64 th)
66.1%4(sin.f64 ky)
65.5%3ky
68.2%4(/.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)))))
65.6%2th
Compiler

Compiled 26 to 38 computations (-46.2% saved)

regimes148.0ms (1.3%)

Memory
18.9MiB live, 212.7MiB allocated
Counts
60 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (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(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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (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 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1/2 binary64)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 (*.f64 #s(approx (neg (sin th)) (neg.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)))))
(/.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))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 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)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
Calls

8 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)))))
19.0ms
ky
18.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 ky)
18.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
58.7%4(sin.f64 kx)
57.4%3kx
57.0%3(sin.f64 ky)
55.8%3ky
48.3%3(sin.f64 th)
56.4%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)))))
52.8%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))
48.4%2th
Compiler

Compiled 38 to 45 computations (-18.4% saved)

regimes116.0ms (1%)

Memory
-10.6MiB live, 107.2MiB allocated
Counts
55 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (sin.f64 kx) (sin.f64 th))))
(/.f64 (sin.f64 ky) (/.f64 #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (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(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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (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 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1/2 binary64)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64))) #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (neg.f64 #s(approx (sin ky) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) ky))) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 (*.f64 #s(approx (neg (sin th)) (neg.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
Outputs
(/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (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

6 calls:

26.0ms
(sin.f64 ky)
25.0ms
ky
16.0ms
kx
15.0ms
(sin.f64 kx)
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
44.7%2ky
49.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)))))
45.9%2(sin.f64 ky)
49.5%4(sin.f64 kx)
44.2%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
44.2%3kx
Compiler

Compiled 23 to 31 computations (-34.8% saved)

regimes13.0ms (0.1%)

Memory
22.3MiB live, 22.3MiB allocated
Counts
39 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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) (sin.f64 ky)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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:

11.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.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 13 to 11 computations (15.4% saved)

regimes27.0ms (0.2%)

Memory
1.9MiB live, 38.3MiB allocated
Counts
37 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
Outputs
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

2 calls:

13.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)))))
11.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))
Results
AccuracySegmentsBranch
42.4%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))
48.8%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 29 to 24 computations (17.2% saved)

regimes14.0ms (0.1%)

Memory
-14.9MiB live, 22.0MiB allocated
Counts
36 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) (*.f64 kx kx) #s(literal -1/6 binary64)) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
Outputs
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

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

regimes12.0ms (0.1%)

Memory
21.2MiB live, 21.2MiB allocated
Counts
34 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
Outputs
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.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

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

regimes19.0ms (0.2%)

Memory
-29.4MiB live, 17.1MiB allocated
Counts
32 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sin.f64 th)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
Outputs
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

17.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
48.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 13 to 11 computations (15.4% saved)

regimes11.0ms (0.1%)

Memory
13.6MiB live, 13.6MiB allocated
Counts
30 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin 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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#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/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal 1/36 binary64) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal -1 binary64)) ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) #s(approx (sin kx) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) #s(literal -1/6 binary64) kx)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
Outputs
(/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 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)))))
Results
AccuracySegmentsBranch
48.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 13 to 11 computations (15.4% saved)

regimes8.0ms (0.1%)

Memory
18.7MiB live, 18.7MiB allocated
Counts
22 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (neg (sin ky)) (neg.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))))
Outputs
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
#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
48.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 13 to 11 computations (15.4% saved)

regimes9.0ms (0.1%)

Memory
-20.2MiB live, 18.4MiB allocated
Counts
19 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.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 (/ (pow (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) -1) (pow (sin ky) -1)) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
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
48.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 13 to 11 computations (15.4% saved)

regimes52.0ms (0.5%)

Memory
10.5MiB live, 87.0MiB allocated
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) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #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 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (sin.f64 th)) kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

9 calls:

6.0ms
(sin.f64 th)
6.0ms
kx
6.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))
5.0ms
(sin.f64 ky)
5.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
35.6%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.0%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
35.2%3kx
37.7%2ky
37.6%2(sin.f64 ky)
34.9%3(sin.f64 kx)
32.1%4(sin.f64 th)
30.3%2th
39.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 42 to 51 computations (-21.4% saved)

regimes5.0ms (0%)

Memory
9.2MiB live, 9.2MiB allocated
Counts
12 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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 (pow (sin ky) -1) (/.f64 #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 (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

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

regimes30.0ms (0.3%)

Memory
-5.0MiB live, 38.1MiB allocated
Counts
11 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #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) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (* -1/6 (* th th)) th) th) (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) 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) #s(approx (+ (* (pow th 3) -1/6) 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)) (sin.f64 th))
Calls

7 calls:

6.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)))))
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
(sin.f64 ky)
4.0ms
ky
4.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
27.2%2(sin.f64 kx)
25.1%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
25.1%1kx
30.4%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))
28.7%2(sin.f64 ky)
28.4%2ky
30.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 39 to 44 computations (-12.8% saved)

regimes19.0ms (0.2%)

Memory
-14.9MiB live, 23.9MiB allocated
Counts
5 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

7 calls:

4.0ms
(sin.f64 th)
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
(/.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
2.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
25.1%1(sin.f64 kx)
25.1%1ky
25.1%1(sin.f64 ky)
25.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))
25.1%1(sin.f64 th)
25.1%1th
25.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)))))
Compiler

Compiled 37 to 42 computations (-13.5% saved)

regimes24.0ms (0.2%)

Memory
-10.4MiB live, 28.6MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
Calls

9 calls:

7.0ms
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 kx)
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
(sin.f64 th)
Results
AccuracySegmentsBranch
12.6%1ky
12.6%1kx
12.6%1th
12.6%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
12.6%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))
12.6%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)))))
12.6%1(sin.f64 kx)
12.6%1(sin.f64 ky)
12.6%1(sin.f64 th)
Compiler

Compiled 42 to 51 computations (-21.4% saved)

bsearch15.0ms (0.1%)

Memory
23.1MiB live, 23.1MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
14.0ms
6.418968754687884e-6
1.4898971897320065e-5
Samples
10.0ms80×0valid
Compiler

Compiled 244 to 213 computations (12.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-sin: 5.0ms (61.9% of total)
ival-pow2: 2.0ms (24.8% of total)
ival-sqrt: 1.0ms (12.4% of total)
ival-div: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
ival-add: 0.0ms (0% of total)
ival-mult: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
2.2MiB live, 2.2MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
6.418968754687884e-6
1.4898971897320065e-5
Compiler

Compiled 244 to 213 computations (12.7% saved)

bsearch1.0ms (0%)

Memory
2.4MiB live, 2.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
+inf
0.0ms
0.7673942650997266
0.8546282931561966
0.0ms
0.04525060323376544
0.12021927043699558
0.0ms
-0.04144571876403352
2.5321520086964763e-307
0.0ms
-0.9999787671360046
-0.9989184940227502
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.4MiB live, 2.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
+inf
0.0ms
0.7673942650997266
0.8546282931561966
0.0ms
0.04525060323376544
0.12021927043699558
0.0ms
-0.04144571876403352
2.5321520086964763e-307
0.0ms
-0.9999787671360046
-0.9989184940227502
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.2MiB live, 2.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
+inf
0.0ms
0.7673942650997266
0.8546282931561966
0.0ms
0.04525060323376544
0.12021927043699558
0.0ms
-0.04144571876403352
2.5321520086964763e-307
0.0ms
-0.9999787671360046
-0.9989184940227502
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch24.0ms (0.2%)

Memory
-6.8MiB live, 29.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
22.0ms
2.586192365741395e-6
6.896029887109152e-5
Samples
17.0ms112×0valid
Compiler

Compiled 313 to 242 computations (22.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-sin: 9.0ms (64.3% of total)
ival-pow2: 2.0ms (14.3% of total)
ival-div: 1.0ms (7.1% of total)
ival-add: 1.0ms (7.1% of total)
ival-mult: 1.0ms (7.1% of total)
ival-sqrt: 1.0ms (7.1% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
1.9MiB live, 1.9MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
2.586192365741395e-6
6.896029887109152e-5
Compiler

Compiled 243 to 207 computations (14.8% saved)

bsearch26.0ms (0.2%)

Memory
-8.1MiB live, 32.3MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
24.0ms
9.235435362548529
348.6135641517498
Samples
20.0ms112×0valid
Compiler

Compiled 299 to 256 computations (14.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-sin: 8.0ms (60.4% of total)
ival-pow2: 2.0ms (15.1% of total)
ival-div: 1.0ms (7.5% of total)
ival-add: 1.0ms (7.5% of total)
ival-mult: 1.0ms (7.5% of total)
ival-sqrt: 1.0ms (7.5% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch45.0ms (0.4%)

Memory
-6.3MiB live, 67.7MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
25.0ms
8.493164689555524e-12
2.4977317150991723e-7
16.0ms
6.869246999545476e-174
8.73117411873365e-173
Samples
32.0ms224×0valid
Compiler

Compiled 661 to 548 computations (17.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 26.0ms
ival-sin: 12.0ms (46.1% of total)
ival-sqrt: 6.0ms (23.1% of total)
ival-pow2: 4.0ms (15.4% of total)
ival-div: 1.0ms (3.8% of total)
ival-add: 1.0ms (3.8% of total)
ival-mult: 1.0ms (3.8% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.3287762038237924e-5
0.0002063211350093491
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.3287762038237924e-5
0.0002063211350093491
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.3287762038237924e-5
0.0002063211350093491
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.3287762038237924e-5
0.0002063211350093491
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.3287762038237924e-5
0.0002063211350093491
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.3287762038237924e-5
0.0002063211350093491
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.3287762038237924e-5
0.0002063211350093491
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.3287762038237924e-5
0.0002063211350093491
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.3287762038237924e-5
0.0002063211350093491
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.4976321627796698e-27
9.972346748046576e-26
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.3287762038237924e-5
0.0002063211350093491
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch9.0ms (0.1%)

Memory
13.4MiB live, 13.3MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
8.0ms
4.2743472471882955e-80
1.3318065055228307e-79
Samples
5.0ms80×0valid
Compiler

Compiled 279 to 229 computations (17.9% saved)

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

simplify118.0ms (1%)

Memory
3.2MiB live, 82.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 8 (0.0ms)

IterNodesCost
02261728
12711728
23281728
33981728
44501728
55311728
612301728
728891728
858711725
Stop Event
node limit
Calls
Call 1
Inputs
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(if (<=.f64 ky #s(literal 2095550126773405/295147905179352825856 binary64)) (/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))) (/.f64 (*.f64 (sin.f64 th) (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))))
(if (<=.f64 ky #s(literal 2095550126773405/295147905179352825856 binary64)) (/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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 (/.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 (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 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 -5764607523034235/144115188075855872 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 3602879701896397/72057594037927936 binary64)) (*.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)) (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/4503599627370496 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 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 -8998192055486251/9007199254740992 binary64)) (*.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)) (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 -5764607523034235/144115188075855872 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 3602879701896397/72057594037927936 binary64)) (*.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)) (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/4503599627370496 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 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 -8998192055486251/9007199254740992 binary64)) (*.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)) (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 -5764607523034235/144115188075855872 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 3602879701896397/72057594037927936 binary64)) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 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 3602879701896397/4503599627370496 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))))))))
(if (<=.f64 th #s(literal 2176715800697727/36893488147419103232 binary64)) (/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(if (<=.f64 th #s(literal 2176715800697727/36893488147419103232 binary64)) (/.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))))
(if (<=.f64 th #s(literal 19/2 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th)))
(if (<=.f64 kx #s(literal 1479368028632685/17404329748619824289860426352311291980336107281679382059399385520550823849520406290076876874227033232798165548605325345270876711736203910820971150664223534348495463082734165001231667298304 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (if (<=.f64 kx #s(literal 4533471823554859/18889465931478580854784 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th)) (*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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 5902958103587057/147573952589676412928 binary64)) (/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (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 5902958103587057/147573952589676412928 binary64)) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 5902958103587057/147573952589676412928 binary64)) (/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #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 5902958103587057/147573952589676412928 binary64)) (/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #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 5902958103587057/147573952589676412928 binary64)) (/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.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 5902958103587057/147573952589676412928 binary64)) (/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 5902958103587057/147573952589676412928 binary64)) (/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #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 5902958103587057/147573952589676412928 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) 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 5902958103587057/147573952589676412928 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 348449143727041/87112285931760246646623899502532662132736 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 (pow (sin ky) -1) (/.f64 #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 5902958103587057/147573952589676412928 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 (pow (sin ky) -1) (/.f64 #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 1668739871813211/16687398718132110018711107079449625895333629080911349765211262561111091607661254297054391304192 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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)) (sin.f64 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) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
Outputs
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(if (<=.f64 ky #s(literal 2095550126773405/295147905179352825856 binary64)) (/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))) (/.f64 (*.f64 (sin.f64 th) (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))))
(if (<=.f64 ky #s(literal 2095550126773405/295147905179352825856 binary64)) (/.f64 (*.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (/.f64 (*.f64 (sin.f64 th) (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))))
(if (<=.f64 ky #s(literal 2095550126773405/295147905179352825856 binary64)) (/.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 binary64) ky))) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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 2095550126773405/295147905179352825856 binary64)) (/.f64 (*.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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 (/.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 (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 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 -5764607523034235/144115188075855872 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 3602879701896397/72057594037927936 binary64)) (*.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)) (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/4503599627370496 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 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 -8998192055486251/9007199254740992 binary64)) (*.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)) (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 -5764607523034235/144115188075855872 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 3602879701896397/72057594037927936 binary64)) (*.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)) (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/4503599627370496 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (pow (sin ky) -1) (pow.f64 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 -8998192055486251/9007199254740992 binary64)) (*.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)) (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 -5764607523034235/144115188075855872 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 3602879701896397/72057594037927936 binary64)) (*.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)) (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/4503599627370496 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 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 -8998192055486251/9007199254740992 binary64)) (*.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)) (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 -5764607523034235/144115188075855872 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 3602879701896397/72057594037927936 binary64)) (*.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)) (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/4503599627370496 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 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 -8998192055486251/9007199254740992 binary64)) (*.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)) (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 -5764607523034235/144115188075855872 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 3602879701896397/72057594037927936 binary64)) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 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 3602879701896397/4503599627370496 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #s(literal 1 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 -8998192055486251/9007199254740992 binary64)) (*.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)) (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 -5764607523034235/144115188075855872 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 3602879701896397/72057594037927936 binary64)) (/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 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 3602879701896397/4503599627370496 binary64)) (*.f64 #s(approx (* (neg (sin ky)) (sin th)) (*.f64 (neg.f64 th) (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (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 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))))))))
(if (<=.f64 th #s(literal 2176715800697727/36893488147419103232 binary64)) (/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) th))) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(if (<=.f64 th #s(literal 2176715800697727/36893488147419103232 binary64)) (/.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))))
(if (<=.f64 th #s(literal 19/2 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th)))
(if (<=.f64 kx #s(literal 1479368028632685/17404329748619824289860426352311291980336107281679382059399385520550823849520406290076876874227033232798165548605325345270876711736203910820971150664223534348495463082734165001231667298304 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (if (<=.f64 kx #s(literal 4533471823554859/18889465931478580854784 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th)) (*.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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 5902958103587057/147573952589676412928 binary64)) (/.f64 (sin.f64 ky) #s(approx (/ (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin th)) (/.f64 (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 5902958103587057/147573952589676412928 binary64)) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 5902958103587057/147573952589676412928 binary64)) (/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 ky ky) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #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 5902958103587057/147573952589676412928 binary64)) (/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #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 5902958103587057/147573952589676412928 binary64)) (/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.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 5902958103587057/147573952589676412928 binary64)) (/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (/.f64 #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 5902958103587057/147573952589676412928 binary64)) (/.f64 (*.f64 (neg.f64 (sin.f64 th)) #s(approx (/ -1 (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) #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 5902958103587057/147573952589676412928 binary64)) (/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (/.f64 #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 5902958103587057/147573952589676412928 binary64)) (/.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) #s(approx (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) #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 5902958103587057/147573952589676412928 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) 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 5902958103587057/147573952589676412928 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 348449143727041/87112285931760246646623899502532662132736 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 (pow (sin ky) -1) (/.f64 #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 348449143727041/87112285931760246646623899502532662132736 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 (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) #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 5902958103587057/147573952589676412928 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 (pow (sin ky) -1) (/.f64 #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 5902958103587057/147573952589676412928 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 (pow (sin ky) -1) (pow.f64 ky #s(literal -1 binary64)))) #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 1668739871813211/16687398718132110018711107079449625895333629080911349765211262561111091607661254297054391304192 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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)) (sin.f64 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) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))

soundness2.3s (20.5%)

Memory
-139.4MiB live, 1 354.8MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05672861
118442746
269432638
081242461
035167
058157
1204157
21217157
09522157
05672748
117972575
266412474
080262284
045186
071185
1245172
21396170
08163170
03171402
110111353
238651261
378121261
081151188
05522936
118122795
269242697
080342534
01349
02249
16249
234449
3297849
0826034
Stop Event
fuel
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
Compiler

Compiled 3 496 to 1 450 computations (58.5% saved)

preprocess296.0ms (2.6%)

Memory
4.4MiB live, 312.7MiB allocated
Remove

(negabs ky)

(negabs th)

(abs kx)

Compiler

Compiled 3 588 to 540 computations (84.9% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...