Toniolo and Linder, Equation (3b), real

Time bar (total: 7.0s)

start0.0ms (0%)

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

analyze227.0ms (3.3%)

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

Compiled 18 to 14 computations (22.2% saved)

sample2.0s (28.5%)

Memory
19.2MiB live, 2 497.6MiB allocated; 1.1s collecting garbage
Samples
1.7s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.4s
ival-sin: 986.0ms (68.9% of total)
ival-pow2: 177.0ms (12.4% of total)
ival-mult: 108.0ms (7.5% of total)
ival-div: 55.0ms (3.8% of total)
ival-sqrt: 55.0ms (3.8% of total)
ival-add: 40.0ms (2.8% of total)
ival-true: 5.0ms (0.3% of total)
ival-assert: 3.0ms (0.2% of total)
adjust: 2.0ms (0.1% of total)
Bogosity

explain248.0ms (3.6%)

Memory
19.0MiB live, 257.2MiB allocated; 25ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
240-3(6.276762720394459e-159 -1.0314960527230056e-177 -1.2036625827416384e-76)(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-rescue210
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))underflow60
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))underflow67
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))underflow21
Confusion
Predicted +Predicted -
+213
-0232
Precision
1.0
Recall
0.875
Confusion?
Predicted +Predicted MaybePredicted -
+2103
-00232
Precision?
1.0
Recall?
0.875
Freqs
test
numberfreq
0235
121
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
145.0ms512×0valid
Compiler

Compiled 152 to 43 computations (71.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 126.0ms
ival-sin: 75.0ms (59.6% of total)
ival-pow2: 34.0ms (27% of total)
ival-add: 6.0ms (4.8% of total)
ival-div: 3.0ms (2.4% of total)
ival-mult: 3.0ms (2.4% of total)
ival-sqrt: 3.0ms (2.4% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

preprocess222.0ms (3.2%)

Memory
-25.3MiB live, 255.9MiB allocated; 46ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045153
189147
2222147
3433147
4957147
53013147
01316
02216
13016
25316
311316
423816
558516
6234316
7758016
0812011
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
Symmetry

(abs kx)

(negabs th)

(negabs ky)

Compiler

Compiled 16 to 13 computations (18.8% saved)

eval0.0ms (0%)

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

Compiled 0 to 3 computations (-∞% saved)

prune1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
91.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))
Compiler

Compiled 16 to 13 computations (18.8% saved)

series36.0ms (0.5%)

Memory
13.6MiB live, 57.9MiB allocated; 7ms collecting garbage
Counts
13 → 60
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
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(pow (sin ky) 2)
(+ (pow kx 2) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (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))))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(pow (sin kx) 2)
(sin kx)
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(+ (pow ky 2) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(* (* 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))))
Calls

9 calls:

TimeVariablePointExpression
7.0ms
ky
@inf
((* (/ (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) ky (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow (sin kx) 2) (sin kx) kx 2 (pow (sin ky) 2) (sin th) th)
5.0ms
th
@inf
((* (/ (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) ky (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow (sin kx) 2) (sin kx) kx 2 (pow (sin ky) 2) (sin th) th)
5.0ms
ky
@0
((* (/ (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) ky (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow (sin kx) 2) (sin kx) kx 2 (pow (sin ky) 2) (sin th) th)
4.0ms
kx
@-inf
((* (/ (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) ky (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow (sin kx) 2) (sin kx) kx 2 (pow (sin ky) 2) (sin th) th)
4.0ms
kx
@inf
((* (/ (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) ky (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow (sin kx) 2) (sin kx) kx 2 (pow (sin ky) 2) (sin th) th)

simplify255.0ms (3.6%)

Memory
-22.9MiB live, 275.0MiB allocated; 74ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03531595
112561529
260231483
083461373
Stop Event
iter limit
node limit
Counts
60 → 57
Calls
Call 1
Inputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(pow (sin ky) 2)
(+ (pow kx 2) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (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))))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(pow (sin kx) 2)
(sin kx)
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(+ (pow ky 2) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(* (* 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))))
Outputs
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 (*.f64 kx kx) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (/.f64 (fma.f64 (*.f64 kx kx) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) #s(literal 1/2 binary64)) (sin.f64 ky)) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 ky)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(+ (pow kx 2) (pow (sin ky) 2))
(fma.f64 kx kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(fma.f64 kx kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) #s(literal -1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))
(fma.f64 kx kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 #s(literal 2/45 binary64) (*.f64 kx kx) #s(literal -1/3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 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))
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) (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 ky) (sin.f64 th)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin kx)
(sin.f64 kx)
(/ (* ky (sin th)) (sin kx))
(*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 th) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx)) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal 1/12 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/120 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 th) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (sin.f64 th)) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (fma.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (sin.f64 th)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 (fma.f64 #s(literal -1/5040 binary64) (sin.f64 th) (/.f64 (*.f64 #s(literal -1/240 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (/.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 th) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(/ ky (sin kx))
(/.f64 ky (sin.f64 kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (*.f64 ky (*.f64 (neg.f64 ky) ky)) (/.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/6 binary64)) (sin.f64 kx)) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (fma.f64 (+.f64 (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (fma.f64 (+.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))) (sin.f64 kx) (-.f64 (fma.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/5040 binary64) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (/.f64 ky (sin.f64 kx)))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (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) (* 1/2 (/ (pow ky 2) (sin kx))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (/.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) #s(literal 1/2 binary64)) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 kx)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))
(+ (pow ky 2) (pow (sin kx) 2))
(fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(fma.f64 ky ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(fma.f64 ky ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(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))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 (*.f64 (sin.f64 ky) th) th) #s(literal -1/6 binary64) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 (*.f64 (sin.f64 ky) th) th) #s(literal 1/120 binary64) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 (*.f64 (sin.f64 ky) th) th) #s(literal -1/6 binary64) (sin.f64 ky)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 ky) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) th) #s(literal -1/5040 binary64)))))) th)
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)

rewrite67.0ms (1%)

Memory
-12.9MiB live, 44.3MiB allocated; 6ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01366
02266
15966
034151
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
13 → 105
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 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(sin.f64 ky)
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1 binary64)))
ky
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 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)))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(/.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (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 (-.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 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.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 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (-.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))))
(fma.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (exp.f64 (log.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 ky))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 kx)))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 ky)))
(+.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (-.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 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (-.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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(*.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)))
(*.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 (log.f64 (sin.f64 kx))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 kx kx)) (cos.f64 (+.f64 kx kx))) #s(literal 2 binary64))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64))))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(sin.f64 kx)
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1 binary64)))
kx
#s(literal 2 binary64)
(*.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 ky)))
(*.f64 (exp.f64 (log.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 ky))))
(*.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)))
(*.f64 (sin.f64 ky) (sin.f64 ky))
(pow.f64 (exp.f64 (log.f64 (sin.f64 ky))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky ky)) (cos.f64 (+.f64 ky ky))) #s(literal 2 binary64))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64))))
(sin.f64 th)
th

eval22.0ms (0.3%)

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

Compiled 4 384 to 869 computations (80.2% saved)

prune20.0ms (0.3%)

Memory
-23.4MiB live, 22.9MiB allocated; 3ms collecting garbage
Pruning

17 alts after pruning (17 fresh and 0 done)

PrunedKeptTotal
New15417171
Fresh000
Picked101
Done000
Total15517172
Accuracy
100.0%
Counts
172 → 17
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.9%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
64.5%
(*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
81.4%
(*.f64 (/.f64 (sin.f64 ky) (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 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))) (sin.f64 th))
65.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
64.6%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64))) #s(literal 2 binary64))))) (sin.f64 th))
81.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
41.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
35.7%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
35.0%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
99.6%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
20.4%
(*.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.9%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
90.4%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
21.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal 1/12 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/120 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 th) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx)))))
46.3%
#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)))))))
30.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Compiler

Compiled 894 to 638 computations (28.6% saved)

series30.0ms (0.4%)

Memory
31.0MiB live, 31.0MiB allocated; 0ms collecting garbage
Counts
33 → 99
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (*.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 (sin.f64 ky) th)
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
#s(literal 1 binary64)
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))) #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 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sqrt.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))) #s(literal 2 binary64))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
Outputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
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 (sin ky) 2)
(+ (pow kx 2) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))
(pow ky 2)
(+ (pow kx 2) (pow ky 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow ky 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow 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))))
th
(+ th (* -1/2 (/ (* (pow kx 2) th) (pow (sin ky) 2))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* th (* (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 (* th (* (pow (sin ky) 2) (+ (* 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)))
(/ 1 (pow (sin ky) 2))
(+ (* -1 (/ (pow kx 2) (pow (sin ky) 4))) (/ 1 (pow (sin ky) 2)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6)))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1 (* (pow kx 2) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6))))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(sqrt kx)
(+ (sqrt kx) (* -1/12 (sqrt (pow kx 5))))
(+ (sqrt kx) (* (pow kx 3) (+ (* -1/12 (sqrt (/ 1 kx))) (* 1/240 (sqrt (pow kx 3))))))
(+ (sqrt kx) (* (pow kx 3) (+ (* -1/12 (sqrt (/ 1 kx))) (* (pow kx 2) (+ (* -1/288 (sqrt (/ 1 kx))) (* 1/240 (sqrt (/ 1 kx))))))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(sin kx)
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(+ (pow ky 2) (pow (sin kx) 2))
(pow (sin kx) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(sqrt (sin kx))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(/ (* ky th) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (+ (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* th (* (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 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ th (pow (sin kx) 3))) (* -1/5040 (/ th (sin kx)))))))))))))) (/ th (sin kx))))
(* ky th)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) th)) (* 1/120 th)))))))
(/ 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)))
(/ 1 (pow (sin kx) 2))
(+ (* -1 (/ (pow ky 2) (pow (sin kx) 4))) (/ 1 (pow (sin kx) 2)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6)))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 2)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1 (* (pow ky 2) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6))))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 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 ky 2) (+ 1 (/ (pow (sin kx) 2) (pow ky 2))))
(* th (sin ky))
(* 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 (+ 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))))
Calls

9 calls:

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

simplify203.0ms (2.9%)

Memory
-19.5MiB live, 154.6MiB allocated; 36ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05282732
118862648
087602490
Stop Event
iter limit
node limit
Counts
99 → 96
Calls
Call 1
Inputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
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 (sin ky) 2)
(+ (pow kx 2) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))
(pow ky 2)
(+ (pow kx 2) (pow ky 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow ky 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow 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))))
th
(+ th (* -1/2 (/ (* (pow kx 2) th) (pow (sin ky) 2))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* th (* (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 (* th (* (pow (sin ky) 2) (+ (* 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)))
(/ 1 (pow (sin ky) 2))
(+ (* -1 (/ (pow kx 2) (pow (sin ky) 4))) (/ 1 (pow (sin ky) 2)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6)))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1 (* (pow kx 2) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6))))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(sqrt kx)
(+ (sqrt kx) (* -1/12 (sqrt (pow kx 5))))
(+ (sqrt kx) (* (pow kx 3) (+ (* -1/12 (sqrt (/ 1 kx))) (* 1/240 (sqrt (pow kx 3))))))
(+ (sqrt kx) (* (pow kx 3) (+ (* -1/12 (sqrt (/ 1 kx))) (* (pow kx 2) (+ (* -1/288 (sqrt (/ 1 kx))) (* 1/240 (sqrt (/ 1 kx))))))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(sin kx)
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(+ (pow ky 2) (pow (sin kx) 2))
(pow (sin kx) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(sqrt (sin kx))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(/ (* ky th) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (+ (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* th (* (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 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ th (pow (sin kx) 3))) (* -1/5040 (/ th (sin kx)))))))))))))) (/ th (sin kx))))
(* ky th)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) th)) (* 1/120 th)))))))
(/ 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)))
(/ 1 (pow (sin kx) 2))
(+ (* -1 (/ (pow ky 2) (pow (sin kx) 4))) (/ 1 (pow (sin kx) 2)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6)))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 2)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1 (* (pow ky 2) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6))))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 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 ky 2) (+ 1 (/ (pow (sin kx) 2) (pow ky 2))))
(* th (sin ky))
(* 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 (+ 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))))
Outputs
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 kx kx) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) (sin.f64 th))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (-.f64 (*.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 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.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 kx kx) (neg.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 kx kx) (sin.f64 ky)) #s(literal 1/2 binary64) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (/.f64 (fma.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (*.f64 kx kx) #s(literal 1/2 binary64)) (sin.f64 ky)) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (-.f64 #s(literal 2/45 binary64) (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 ky)) (*.f64 kx kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 ky))) (*.f64 kx kx) (sin.f64 ky))
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 (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(+ (pow kx 2) (pow (sin ky) 2))
(fma.f64 kx kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 2/45 binary64) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow ky 2)
(*.f64 ky ky)
(+ (pow kx 2) (pow ky 2))
(fma.f64 kx kx (*.f64 ky ky))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow ky 2))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx (*.f64 ky ky))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow ky 2))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 2/45 binary64) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx (*.f64 ky ky))
(pow kx 2)
(*.f64 kx kx)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx)
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 2/45 binary64) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx)
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(*.f64 (*.f64 (fma.f64 (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) #s(literal 1 binary64)) kx) kx)
th
(+ th (* -1/2 (/ (* (pow kx 2) th) (pow (sin ky) 2))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 th (pow.f64 (sin.f64 ky) #s(literal 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 kx kx)))) (*.f64 kx kx) th)
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* th (* (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 (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (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 (*.f64 th (pow.f64 (sin.f64 ky) #s(literal 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 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))) (*.f64 kx kx) 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 (*.f64 kx 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 (-.f64 (*.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 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 ky)) (*.f64 kx kx)) (*.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 kx kx) (neg.f64 (/.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)))
(/ 1 (pow (sin ky) 2))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (* -1 (/ (pow kx 2) (pow (sin ky) 4))) (/ 1 (pow (sin ky) 2)))
(fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6)))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(fma.f64 (-.f64 (*.f64 (+.f64 (/.f64 #s(literal 1 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 kx kx)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1 (* (pow kx 2) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6))))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(fma.f64 (-.f64 (*.f64 (fma.f64 (neg.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 kx kx) (+.f64 (/.f64 #s(literal 1 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 kx kx)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(sqrt kx)
(sqrt.f64 kx)
(+ (sqrt kx) (* -1/12 (sqrt (pow kx 5))))
(fma.f64 (sqrt.f64 (pow.f64 kx #s(literal 5 binary64))) #s(literal -1/12 binary64) (sqrt.f64 kx))
(+ (sqrt kx) (* (pow kx 3) (+ (* -1/12 (sqrt (/ 1 kx))) (* 1/240 (sqrt (pow kx 3))))))
(fma.f64 (fma.f64 (sqrt.f64 (pow.f64 kx #s(literal 3 binary64))) #s(literal 1/240 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) kx)) #s(literal -1/12 binary64))) (pow.f64 kx #s(literal 3 binary64)) (sqrt.f64 kx))
(+ (sqrt kx) (* (pow kx 3) (+ (* -1/12 (sqrt (/ 1 kx))) (* (pow kx 2) (+ (* -1/288 (sqrt (/ 1 kx))) (* 1/240 (sqrt (/ 1 kx))))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) (sqrt.f64 (/.f64 #s(literal 1 binary64) kx))) #s(literal 1/1440 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) kx)) #s(literal -1/12 binary64))) (pow.f64 kx #s(literal 3 binary64)) (sqrt.f64 kx))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin kx)
(sin.f64 kx)
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (pow ky 2) (pow (sin kx) 2))
(fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #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))))))
(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)))))
(/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(sqrt (sin kx))
(sqrt.f64 (sin.f64 kx))
(/ (* ky (sin th)) (sin kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/12 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/120 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (sin.f64 th)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 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))))) (fma.f64 (*.f64 (*.f64 #s(literal -1/12 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)))) (fma.f64 #s(literal -1/240 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 (*.f64 #s(literal -1/5040 binary64) (sin.f64 th)) (sin.f64 kx))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(/ ky (sin kx))
(/.f64 ky (sin.f64 kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(*.f64 (fma.f64 (neg.f64 (+.f64 (/.f64 #s(literal 1/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))))
(*.f64 (fma.f64 (-.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 ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) ky)
(* 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))))
(*.f64 (fma.f64 (-.f64 (*.f64 (+.f64 (fma.f64 (-.f64 (fma.f64 (*.f64 #s(literal -1/12 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 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (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 (/.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 ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) ky)
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(fma.f64 (/.f64 (*.f64 ky ky) (sin.f64 kx)) #s(literal 1/2 binary64) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (/.f64 (fma.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (-.f64 #s(literal 2/45 binary64) (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) (*.f64 ky ky) (sin.f64 kx))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(fma.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(/ (* ky th) (sin kx))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(*.f64 (fma.f64 (*.f64 (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/6 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64))) ky) ky (/.f64 th (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ th (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 th (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)))) (fma.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1/12 binary64) (*.f64 (/.f64 th (sin.f64 kx)) #s(literal 1/120 binary64)))) (*.f64 ky ky) (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/6 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64)))) (*.f64 ky ky) (/.f64 th (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (+ (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* th (* (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 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ th (pow (sin kx) 3))) (* -1/5040 (/ th (sin kx)))))))))))))) (/ th (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th (sin.f64 kx))) (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))))) (fma.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 th (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)))) (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/5040 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/240 binary64))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 th (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 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1/12 binary64))))) (*.f64 ky ky) (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/6 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64)))) (*.f64 ky ky) (/.f64 th (sin.f64 kx))) ky)
(* ky th)
(*.f64 th ky)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) th)) (* 1/120 th)))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) ky) ky (*.f64 #s(literal -1/6 binary64) th)) (*.f64 ky ky) th) 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 ky ky) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (/.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 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (-.f64 (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 kx)) (*.f64 ky ky)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.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 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 kx)) (*.f64 ky ky)) (*.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 ky ky) (neg.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)))
(/ 1 (pow (sin kx) 2))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+ (* -1 (/ (pow ky 2) (pow (sin kx) 4))) (/ 1 (pow (sin kx) 2)))
(fma.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6)))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 2)))
(fma.f64 (-.f64 (*.f64 (+.f64 (/.f64 #s(literal 1 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 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1 (* (pow ky 2) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6))))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 2)))
(fma.f64 (-.f64 (*.f64 (fma.f64 (neg.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 ky ky) (+.f64 (/.f64 #s(literal 1 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 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(*.f64 (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) (*.f64 ky ky) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)
(* (pow ky 2) (+ 1 (/ (pow (sin kx) 2) (pow ky 2))))
(*.f64 (fma.f64 (/.f64 (sin.f64 kx) ky) (/.f64 (sin.f64 kx) ky) #s(literal 1 binary64)) (*.f64 ky ky))
(* th (sin ky))
(*.f64 (sin.f64 ky) th)
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 ky) th) th) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 (sin.f64 ky) th) th) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 ky) th) th) (sin.f64 ky)) (*.f64 (*.f64 (*.f64 th th) (*.f64 th th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 ky) (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 (sin.f64 ky) th) th)))))) th)
(* th (+ 1 (* -1/6 (pow th 2))))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(*.f64 (fma.f64 (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)

rewrite30.0ms (0.4%)

Memory
23.0MiB live, 23.0MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
042337
071256
0229256
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
33 → 208
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (*.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 (sin.f64 ky) th)
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
#s(literal 1 binary64)
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))) #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 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sqrt.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))) #s(literal 2 binary64))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
Outputs
(*.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 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 ky)
ky
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (sin.f64 kx))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (*.f64 ky ky) (*.f64 ky ky)) (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (-.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 ky ky) #s(literal 3 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 ky ky) (*.f64 ky ky) (-.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (*.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(fma.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 ky ky))
(fma.f64 (neg.f64 ky) (neg.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)) (*.f64 ky ky))
(fma.f64 (fabs.f64 ky) (fabs.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)) (*.f64 ky ky))
(fma.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (*.f64 ky ky))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (*.f64 ky ky))
(fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 ky ky))
(*.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)))
(*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(*.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 kx kx)) (cos.f64 (+.f64 kx kx))) #s(literal 2 binary64))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) #s(literal 2 binary64)))
#s(literal 2 binary64)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
(*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))
(*.f64 (*.f64 th (sin.f64 ky)) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 th (sin.f64 ky))
(*.f64 (sin.f64 ky) th)
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (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)))
(sqrt.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
#s(literal 1 binary64)
(/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 ky) #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 kx) #s(literal 2 binary64)))) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (*.f64 (pow.f64 (sin.f64 ky) #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 (+.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (pow.f64 (sin.f64 ky) #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 kx) #s(literal 2 binary64))) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 (sin.f64 ky) #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))))))
(fma.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1 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)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 kx)))
(+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 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 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(*.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)))
(*.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 ky)))
(*.f64 (sin.f64 ky) (sin.f64 ky))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky ky)) (cos.f64 (+.f64 ky ky))) #s(literal 2 binary64))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(*.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 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (sin.f64 kx))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 ky) #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 kx) #s(literal 2 binary64)))) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (*.f64 (pow.f64 (sin.f64 ky) #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 (+.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (pow.f64 (sin.f64 ky) #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 kx) #s(literal 2 binary64))) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 (sin.f64 ky) #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))))))
(fma.f64 (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1 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)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 kx)))
(+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(*.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 1 binary64)))
(*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(*.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1 binary64)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64)) #s(literal 2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 kx kx)) (cos.f64 (+.f64 kx kx))) #s(literal 2 binary64))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 1 binary64))) #s(literal 2 binary64)))
(*.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) (neg.f64 (sqrt.f64 (sin.f64 kx))))
(*.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) (fabs.f64 (sqrt.f64 (sin.f64 kx))))
(*.f64 (sqrt.f64 (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))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))
(sqrt.f64 (sin.f64 kx))
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1/2 binary64)))
#s(literal 1/2 binary64)

eval53.0ms (0.8%)

Memory
11.9MiB live, 55.1MiB allocated; 11ms collecting garbage
Compiler

Compiled 11 396 to 1 548 computations (86.4% saved)

prune59.0ms (0.8%)

Memory
3.5MiB live, 48.7MiB allocated; 8ms collecting garbage
Pruning

34 alts after pruning (32 fresh and 2 done)

PrunedKeptTotal
New30923332
Fresh3912
Picked325
Done000
Total31534349
Accuracy
100.0%
Counts
349 → 34
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.9%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
64.5%
(*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
53.3%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
49.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
81.4%
(*.f64 (/.f64 (sin.f64 ky) (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 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))) (sin.f64 th))
65.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
64.6%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64))) #s(literal 2 binary64))))) (sin.f64 th))
81.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
24.7%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
32.5%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))) (sin.f64 th))
25.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
35.7%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
11.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
39.8%
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
99.6%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
30.9%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
90.4%
(*.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))
20.3%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
48.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
43.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))))
22.8%
#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) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
19.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
21.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
15.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))))
20.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
18.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
53.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
30.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
12.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
19.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.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)))
17.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
28.9%
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
Compiler

Compiled 1 998 to 1 374 computations (31.2% saved)

series59.0ms (0.8%)

Memory
-15.4MiB live, 38.9MiB allocated; 22ms collecting garbage
Counts
38 → 113
Calls
Call 1
Inputs
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(sin.f64 ky)
ky
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 th)
th
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 th th)
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))
#s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))
(*.f64 ky ky)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (sin th) (*.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))
(*.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)
(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))
(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))
(fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))
#s(literal -1/5040 binary64)
#s(literal 1/120 binary64)
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (sin.f64 th) (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 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 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
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 (sin ky) 2)
(+ (pow kx 2) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))
(pow ky 2)
(+ (pow kx 2) (pow ky 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow ky 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow 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))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(sin kx)
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(+ (pow ky 2) (pow (sin kx) 2))
(pow (sin kx) 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 th) (sin kx))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(+ (sin 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))))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(* 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))))))))
(* (pow ky 2) (+ 1 (/ (pow (sin kx) 2) (pow ky 2))))
(* (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 (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
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(+ 1 (* -1/6 (pow th 2)))
(pow th 2)
(+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6)))
(+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6)))
-1/6
(- (* 1/120 (pow th 2)) 1/6)
(- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6)
1/120
(+ 1/120 (* -1/5040 (pow th 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/6 (pow th 2))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(* -1/5040 (pow th 7))
(* (pow th 7) (- (* 1/120 (/ 1 (pow th 2))) 1/5040))
(* (pow th 7) (- (* 1/120 (/ 1 (pow th 2))) (+ 1/5040 (/ 1/6 (pow th 4)))))
(* (pow th 7) (- (+ (* 1/120 (/ 1 (pow th 2))) (/ 1 (pow th 6))) (+ 1/5040 (/ 1/6 (pow th 4)))))
(* -1/5040 (pow th 6))
(* (pow th 6) (- (* 1/120 (/ 1 (pow th 2))) 1/5040))
(* (pow th 6) (- (* 1/120 (/ 1 (pow th 2))) (+ 1/5040 (/ 1/6 (pow th 4)))))
(* (pow th 6) (- (+ (* 1/120 (/ 1 (pow th 2))) (/ 1 (pow th 6))) (+ 1/5040 (/ 1/6 (pow th 4)))))
(* -1/5040 (pow th 4))
(* (pow th 4) (- (* 1/120 (/ 1 (pow th 2))) 1/5040))
(* (pow th 4) (- (* 1/120 (/ 1 (pow th 2))) (+ 1/5040 (/ 1/6 (pow th 4)))))
(* -1/5040 (pow th 2))
(* (pow th 2) (- (* 1/120 (/ 1 (pow th 2))) 1/5040))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
(* -1 (* (pow th 7) (- 1/5040 (* 1/120 (/ 1 (pow th 2))))))
(* -1 (* (pow th 7) (- (+ 1/5040 (/ 1/6 (pow th 4))) (* 1/120 (/ 1 (pow th 2))))))
(* -1 (* (pow th 7) (- (+ 1/5040 (/ 1/6 (pow th 4))) (+ (* 1/120 (/ 1 (pow th 2))) (/ 1 (pow th 6))))))
Calls

9 calls:

TimeVariablePointExpression
32.0ms
ky
@0
((* (sin ky) (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))))) (sin ky) ky (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (sin th) th (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin kx) kx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (* th th) -1/6 1 (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (+ (* ky ky) (pow (sin kx) 2)) (* ky ky) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (+ (* ky ky) (pow (sin kx) 2)) (pow (sin kx) 2) 2 (sin th) (* (+ (* (+ (* (+ (* (* th th) -1/5040) 1/120) (* th th)) -1/6) (* th th)) 1) th) (+ (* (+ (* (+ (* (* th th) -1/5040) 1/120) (* th th)) -1/6) (* th th)) 1) (+ (* (+ (* (* th th) -1/5040) 1/120) (* th th)) -1/6) (+ (* (* th th) -1/5040) 1/120) -1/5040 1/120 (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (* (sin th) (sin ky)))
4.0ms
th
@inf
((* (sin ky) (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))))) (sin ky) ky (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (sin th) th (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin kx) kx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (* th th) -1/6 1 (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (+ (* ky ky) (pow (sin kx) 2)) (* ky ky) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (+ (* ky ky) (pow (sin kx) 2)) (pow (sin kx) 2) 2 (sin th) (* (+ (* (+ (* (+ (* (* th th) -1/5040) 1/120) (* th th)) -1/6) (* th th)) 1) th) (+ (* (+ (* (+ (* (* th th) -1/5040) 1/120) (* th th)) -1/6) (* th th)) 1) (+ (* (+ (* (* th th) -1/5040) 1/120) (* th th)) -1/6) (+ (* (* th th) -1/5040) 1/120) -1/5040 1/120 (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (* (sin th) (sin ky)))
4.0ms
th
@-inf
((* (sin ky) (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))))) (sin ky) ky (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (sin th) th (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin kx) kx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (* th th) -1/6 1 (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (+ (* ky ky) (pow (sin kx) 2)) (* ky ky) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (+ (* ky ky) (pow (sin kx) 2)) (pow (sin kx) 2) 2 (sin th) (* (+ (* (+ (* (+ (* (* th th) -1/5040) 1/120) (* th th)) -1/6) (* th th)) 1) th) (+ (* (+ (* (+ (* (* th th) -1/5040) 1/120) (* th th)) -1/6) (* th th)) 1) (+ (* (+ (* (* th th) -1/5040) 1/120) (* th th)) -1/6) (+ (* (* th th) -1/5040) 1/120) -1/5040 1/120 (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (* (sin th) (sin ky)))
3.0ms
ky
@inf
((* (sin ky) (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))))) (sin ky) ky (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (sin th) th (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin kx) kx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (* th th) -1/6 1 (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (+ (* ky ky) (pow (sin kx) 2)) (* ky ky) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (+ (* ky ky) (pow (sin kx) 2)) (pow (sin kx) 2) 2 (sin th) (* (+ (* (+ (* (+ (* (* th th) -1/5040) 1/120) (* th th)) -1/6) (* th th)) 1) th) (+ (* (+ (* (+ (* (* th th) -1/5040) 1/120) (* th th)) -1/6) (* th th)) 1) (+ (* (+ (* (* th th) -1/5040) 1/120) (* th th)) -1/6) (+ (* (* th th) -1/5040) 1/120) -1/5040 1/120 (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (* (sin th) (sin ky)))
3.0ms
ky
@-inf
((* (sin ky) (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))))) (sin ky) ky (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (sin th) th (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin kx) kx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (* th th) -1/6 1 (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (+ (* ky ky) (pow (sin kx) 2)) (* ky ky) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)) (+ (* ky ky) (pow (sin kx) 2)) (pow (sin kx) 2) 2 (sin th) (* (+ (* (+ (* (+ (* (* th th) -1/5040) 1/120) (* th th)) -1/6) (* th th)) 1) th) (+ (* (+ (* (+ (* (* th th) -1/5040) 1/120) (* th th)) -1/6) (* th th)) 1) (+ (* (+ (* (* th th) -1/5040) 1/120) (* th th)) -1/6) (+ (* (* th th) -1/5040) 1/120) -1/5040 1/120 (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (* (sin th) (sin ky)))

simplify156.0ms (2.2%)

Memory
29.8MiB live, 115.9MiB allocated; 23ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04862597
117122451
081722306
Stop Event
iter limit
node limit
Counts
113 → 110
Calls
Call 1
Inputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(/ (sin th) (sin ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
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 (sin ky) 2)
(+ (pow kx 2) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))
(pow ky 2)
(+ (pow kx 2) (pow ky 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow ky 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow 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))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(sin kx)
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(+ (pow ky 2) (pow (sin kx) 2))
(pow (sin kx) 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 th) (sin kx))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(+ (sin 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))))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(* 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))))))))
(* (pow ky 2) (+ 1 (/ (pow (sin kx) 2) (pow ky 2))))
(* (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 (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
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(+ 1 (* -1/6 (pow th 2)))
(pow th 2)
(+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6)))
(+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6)))
-1/6
(- (* 1/120 (pow th 2)) 1/6)
(- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6)
1/120
(+ 1/120 (* -1/5040 (pow th 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/6 (pow th 2))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(* -1/5040 (pow th 7))
(* (pow th 7) (- (* 1/120 (/ 1 (pow th 2))) 1/5040))
(* (pow th 7) (- (* 1/120 (/ 1 (pow th 2))) (+ 1/5040 (/ 1/6 (pow th 4)))))
(* (pow th 7) (- (+ (* 1/120 (/ 1 (pow th 2))) (/ 1 (pow th 6))) (+ 1/5040 (/ 1/6 (pow th 4)))))
(* -1/5040 (pow th 6))
(* (pow th 6) (- (* 1/120 (/ 1 (pow th 2))) 1/5040))
(* (pow th 6) (- (* 1/120 (/ 1 (pow th 2))) (+ 1/5040 (/ 1/6 (pow th 4)))))
(* (pow th 6) (- (+ (* 1/120 (/ 1 (pow th 2))) (/ 1 (pow th 6))) (+ 1/5040 (/ 1/6 (pow th 4)))))
(* -1/5040 (pow th 4))
(* (pow th 4) (- (* 1/120 (/ 1 (pow th 2))) 1/5040))
(* (pow th 4) (- (* 1/120 (/ 1 (pow th 2))) (+ 1/5040 (/ 1/6 (pow th 4)))))
(* -1/5040 (pow th 2))
(* (pow th 2) (- (* 1/120 (/ 1 (pow th 2))) 1/5040))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
(* -1 (* (pow th 7) (- 1/5040 (* 1/120 (/ 1 (pow th 2))))))
(* -1 (* (pow th 7) (- (+ 1/5040 (/ 1/6 (pow th 4))) (* 1/120 (/ 1 (pow th 2))))))
(* -1 (* (pow th 7) (- (+ 1/5040 (/ 1/6 (pow th 4))) (+ (* 1/120 (/ 1 (pow th 2))) (/ 1 (pow th 6))))))
Outputs
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 kx kx) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) (sin.f64 th))
(/ (sin th) (sin ky))
(/.f64 (sin.f64 th) (sin.f64 ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(fma.f64 (*.f64 (*.f64 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 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (sin.f64 ky)) (*.f64 kx kx)))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (sin.f64 ky)) (*.f64 kx kx)) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (sin.f64 ky)))) (*.f64 kx kx) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (/.f64 (fma.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (*.f64 kx kx) #s(literal 1/2 binary64)) (sin.f64 ky)) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 ky)) (*.f64 kx kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 ky))) (*.f64 kx kx) (sin.f64 ky))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 kx kx) #s(literal -1/6 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(*.f64 (fma.f64 (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)) (*.f64 kx kx) #s(literal 1 binary64)) kx)
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 #s(literal 1/2 binary64) (*.f64 kx kx)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(+ (pow kx 2) (pow (sin ky) 2))
(fma.f64 kx kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 2/45 binary64) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow ky 2)
(*.f64 ky ky)
(+ (pow kx 2) (pow ky 2))
(fma.f64 kx kx (*.f64 ky ky))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow ky 2))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx (*.f64 ky ky))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow ky 2))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 2/45 binary64) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx (*.f64 ky ky))
(pow kx 2)
(*.f64 kx kx)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx)
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 2/45 binary64) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx)
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(*.f64 (*.f64 (fma.f64 (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) #s(literal 1 binary64)) kx) kx)
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(* (sin 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))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin kx)
(sin.f64 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))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (pow ky 2) (pow (sin kx) 2))
(fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #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))))
(*.f64 (fma.f64 (fma.f64 (sin.f64 th) (/.f64 #s(literal -1/6 binary64) (sin.f64 kx)) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (sin.f64 th) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (fma.f64 (sin.f64 th) (/.f64 #s(literal -1/6 binary64) (sin.f64 kx)) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (sin.f64 th)) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (fma.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (sin.f64 th)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (fma.f64 #s(literal -1/240 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 (*.f64 #s(literal -1/5040 binary64) (sin.f64 th)) (sin.f64 kx))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (fma.f64 (sin.f64 th) (/.f64 #s(literal -1/6 binary64) (sin.f64 kx)) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(*.f64 (fma.f64 (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)) (*.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 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (sin.f64 kx)) (*.f64 ky ky)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 th)) (sin.f64 kx)) (*.f64 ky ky)) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (/.f64 (fma.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) (*.f64 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/6 binary64) (sin.f64 kx)) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky)) (-.f64 (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (+.f64 (fma.f64 (-.f64 (fma.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))) (-.f64 (/.f64 #s(literal 1/5040 binary64) (sin.f64 kx)) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky)) (-.f64 (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 ky (sin.f64 kx)))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(fma.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(fma.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(* ky (sin th))
(*.f64 (sin.f64 th) ky)
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(*.f64 (fma.f64 (*.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) (sin.f64 th)) ky)
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 th) (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 ky ky) (*.f64 #s(literal -1/6 binary64) (sin.f64 th))) (*.f64 ky ky) (sin.f64 th)) ky)
(* (pow ky 2) (+ 1 (/ (pow (sin kx) 2) (pow ky 2))))
(*.f64 (fma.f64 (/.f64 (sin.f64 kx) ky) (/.f64 (sin.f64 kx) ky) #s(literal 1 binary64)) (*.f64 ky 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 (*.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))))))))))
(fma.f64 (pow.f64 th #s(literal 3 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/120 binary64) #s(literal -1/6 binary64)))) (*.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 (+ (* (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))))) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) (*.f64 (*.f64 (*.f64 th th) (*.f64 th th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.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 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 th th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (*.f64 (*.f64 th th) (*.f64 th th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) th)
th
(* 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 (* -1/6 (pow th 2)))
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(pow th 2)
(*.f64 th th)
(+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6)))
(fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64))
(+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6)))
(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))
-1/6
#s(literal -1/6 binary64)
(- (* 1/120 (pow th 2)) 1/6)
(fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))
(- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6)
(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))
1/120
#s(literal 1/120 binary64)
(+ 1/120 (* -1/5040 (pow th 2)))
(fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))
(* th (sin ky))
(*.f64 (sin.f64 ky) th)
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(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 (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))))))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (fma.f64 (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky))) (*.f64 (sin.f64 ky) th))
(* -1/6 (pow th 3))
(*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64)))
(* -1/6 (pow th 2))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)
(* -1/5040 (pow th 7))
(*.f64 (pow.f64 th #s(literal 7 binary64)) #s(literal -1/5040 binary64))
(* (pow th 7) (- (* 1/120 (/ 1 (pow th 2))) 1/5040))
(*.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 th th)) #s(literal 1/5040 binary64)) (pow.f64 th #s(literal 7 binary64)))
(* (pow th 7) (- (* 1/120 (/ 1 (pow th 2))) (+ 1/5040 (/ 1/6 (pow th 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 th th)) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64)))) (pow.f64 th #s(literal 7 binary64)))
(* (pow th 7) (- (+ (* 1/120 (/ 1 (pow th 2))) (/ 1 (pow th 6))) (+ 1/5040 (/ 1/6 (pow th 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 th #s(literal 6 binary64))) (/.f64 #s(literal -1/120 binary64) (*.f64 th th))) (-.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal -1/5040 binary64))) (pow.f64 th #s(literal 7 binary64)))
(* -1/5040 (pow th 6))
(*.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal -1/5040 binary64))
(* (pow th 6) (- (* 1/120 (/ 1 (pow th 2))) 1/5040))
(*.f64 (pow.f64 th #s(literal 6 binary64)) (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 th th)) #s(literal 1/5040 binary64)))
(* (pow th 6) (- (* 1/120 (/ 1 (pow th 2))) (+ 1/5040 (/ 1/6 (pow th 4)))))
(*.f64 (pow.f64 th #s(literal 6 binary64)) (-.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 th th)) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64)))))
(* (pow th 6) (- (+ (* 1/120 (/ 1 (pow th 2))) (/ 1 (pow th 6))) (+ 1/5040 (/ 1/6 (pow th 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1 binary64) (pow.f64 th #s(literal 6 binary64))) (/.f64 #s(literal -1/120 binary64) (*.f64 th th))) (-.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal -1/5040 binary64))) (pow.f64 th #s(literal 6 binary64)))
(* -1/5040 (pow th 4))
(*.f64 (pow.f64 th #s(literal 4 binary64)) #s(literal -1/5040 binary64))
(* (pow th 4) (- (* 1/120 (/ 1 (pow th 2))) 1/5040))
(*.f64 (pow.f64 th #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 th th)) #s(literal 1/5040 binary64)))
(* (pow th 4) (- (* 1/120 (/ 1 (pow th 2))) (+ 1/5040 (/ 1/6 (pow th 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 th th)) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64)))) (pow.f64 th #s(literal 4 binary64)))
(* -1/5040 (pow th 2))
(*.f64 (*.f64 th th) #s(literal -1/5040 binary64))
(* (pow th 2) (- (* 1/120 (/ 1 (pow th 2))) 1/5040))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 th th)) #s(literal 1/5040 binary64)) th) th)
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
(*.f64 (neg.f64 (-.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (*.f64 th th)))) (pow.f64 th #s(literal 3 binary64)))
(* -1 (* (pow th 7) (- 1/5040 (* 1/120 (/ 1 (pow th 2))))))
(*.f64 (neg.f64 (-.f64 #s(literal 1/5040 binary64) (/.f64 #s(literal 1/120 binary64) (*.f64 th th)))) (pow.f64 th #s(literal 7 binary64)))
(* -1 (* (pow th 7) (- (+ 1/5040 (/ 1/6 (pow th 4))) (* 1/120 (/ 1 (pow th 2))))))
(*.f64 (neg.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal -1/5040 binary64)) (/.f64 #s(literal 1/120 binary64) (*.f64 th th)))) (pow.f64 th #s(literal 7 binary64)))
(* -1 (* (pow th 7) (- (+ 1/5040 (/ 1/6 (pow th 4))) (+ (* 1/120 (/ 1 (pow th 2))) (/ 1 (pow th 6))))))
(*.f64 (neg.f64 (pow.f64 th #s(literal 7 binary64))) (-.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal -1/5040 binary64)) (/.f64 #s(literal 1/120 binary64) (*.f64 th th))) (/.f64 #s(literal 1 binary64) (pow.f64 th #s(literal 6 binary64)))))

rewrite159.0ms (2.3%)

Memory
-29.5MiB live, 89.0MiB allocated; 47ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
049402
083397
1269397
01897397
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
38 → 401
Calls
Call 1
Inputs
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(sin.f64 ky)
ky
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 th)
th
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 th th)
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))
#s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))
(*.f64 ky ky)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (sin th) (*.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))
(*.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)
(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))
(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))
(fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))
#s(literal -1/5040 binary64)
#s(literal 1/120 binary64)
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (sin.f64 th) (sin.f64 ky))
Outputs
(*.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 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(sin.f64 ky)
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1 binary64)))
ky
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(sin.f64 th)
th
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.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 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (exp.f64 (log.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (fabs.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (fabs.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (neg.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (exp.f64 (log.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (fabs.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (neg.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (exp.f64 (log.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (fabs.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(sin.f64 kx)
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1 binary64)))
kx
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)
(*.f64 th (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1 binary64)) th) (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal -1 binary64)))
(/.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) th) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))
(/.f64 (*.f64 th (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1 binary64))) (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal -1 binary64)))
(/.f64 (*.f64 th (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64))) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th (*.f64 #s(literal 1 binary64) th))
(fma.f64 #s(literal 1 binary64) th (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th))
(fma.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) (*.f64 th #s(literal 1 binary64)))
(fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))
(+.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th) (*.f64 #s(literal 1 binary64) th))
(+.f64 (*.f64 #s(literal 1 binary64) th) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th))
(+.f64 (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))) (*.f64 th #s(literal 1 binary64)))
(+.f64 (*.f64 th #s(literal 1 binary64)) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal -1 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal -1 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 2 binary64)) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (neg.f64 th)) (neg.f64 th) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (fabs.f64 th)) (fabs.f64 th) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64))
(fma.f64 (neg.f64 th) (*.f64 (neg.f64 th) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 (fabs.f64 th) (*.f64 (fabs.f64 th) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64))
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(fma.f64 th (*.f64 (*.f64 #s(literal -1/6 binary64) th) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 th (*.f64 #s(literal -1/6 binary64) th) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal -1 binary64))))
(-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/6 binary64) (*.f64 th th)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 th th)) #s(literal -1/6 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 th) (*.f64 #s(literal -1/6 binary64) th)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))))
(+.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))
(*.f64 (neg.f64 (neg.f64 th)) (neg.f64 (neg.f64 th)))
(*.f64 (neg.f64 (fabs.f64 th)) (neg.f64 (fabs.f64 th)))
(*.f64 (fabs.f64 (fabs.f64 th)) (fabs.f64 (fabs.f64 th)))
(*.f64 (pow.f64 th #s(literal 1 binary64)) (pow.f64 th #s(literal 1 binary64)))
(*.f64 (pow.f64 th #s(literal 1 binary64)) th)
(*.f64 (neg.f64 th) (neg.f64 th))
(*.f64 (fabs.f64 th) (fabs.f64 th))
(*.f64 th th)
(pow.f64 (neg.f64 th) #s(literal 2 binary64))
(pow.f64 (fabs.f64 th) #s(literal 2 binary64))
(pow.f64 th #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 th) th))
(neg.f64 (*.f64 th (neg.f64 th)))
(fabs.f64 (*.f64 th th))
(exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))))
(*.f64 (pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))) #s(literal 1/4 binary64)))
(pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))
(exp.f64 (*.f64 (log.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))) #s(literal 1/2 binary64)))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))
#s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))
(*.f64 (neg.f64 (neg.f64 ky)) (neg.f64 (neg.f64 ky)))
(*.f64 (neg.f64 (fabs.f64 ky)) (neg.f64 (fabs.f64 ky)))
(*.f64 (fabs.f64 (fabs.f64 ky)) (fabs.f64 (fabs.f64 ky)))
(*.f64 (pow.f64 ky #s(literal 1 binary64)) (pow.f64 ky #s(literal 1 binary64)))
(*.f64 (pow.f64 ky #s(literal 1 binary64)) ky)
(*.f64 (neg.f64 ky) (neg.f64 ky))
(*.f64 (fabs.f64 ky) (fabs.f64 ky))
(*.f64 ky ky)
(pow.f64 (neg.f64 ky) #s(literal 2 binary64))
(pow.f64 (fabs.f64 ky) #s(literal 2 binary64))
(pow.f64 ky #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 ky) ky))
(neg.f64 (*.f64 ky (neg.f64 ky)))
(fabs.f64 (*.f64 ky ky))
(exp.f64 (*.f64 (log.f64 ky) #s(literal 2 binary64)))
(*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th))) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (neg.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky))) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))))
(*.f64 (pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/4 binary64)))
(pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(exp.f64 (*.f64 (log.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1/2 binary64)))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 ky #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 ky ky)))
(/.f64 (neg.f64 (-.f64 (pow.f64 ky #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (neg.f64 (-.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 ky #s(literal 6 binary64)))) (neg.f64 (+.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (*.f64 ky (sin.f64 kx)) #s(literal 2 binary64))) (pow.f64 ky #s(literal 4 binary64)))))
(/.f64 (-.f64 (pow.f64 ky #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (-.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 ky #s(literal 6 binary64))) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 ky #s(literal 4 binary64)) (pow.f64 (*.f64 ky (sin.f64 kx)) #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 ky #s(literal 6 binary64))) (+.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (*.f64 ky (sin.f64 kx)) #s(literal 2 binary64))) (pow.f64 ky #s(literal 4 binary64))))
(fma.f64 (neg.f64 (neg.f64 ky)) (neg.f64 (neg.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (fabs.f64 ky)) (neg.f64 (fabs.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))) (*.f64 ky ky))
(fma.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 kx))) (*.f64 ky ky))
(fma.f64 (fabs.f64 (fabs.f64 ky)) (fabs.f64 (fabs.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 kx))) (*.f64 ky ky))
(fma.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))) (*.f64 ky ky))
(fma.f64 (pow.f64 ky #s(literal 1 binary64)) (pow.f64 ky #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (pow.f64 ky #s(literal 1 binary64)) ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 ky) (neg.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)) (*.f64 ky ky))
(fma.f64 (fabs.f64 ky) (fabs.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)) (*.f64 ky ky))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (*.f64 ky ky))
(fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(-.f64 (/.f64 (pow.f64 ky #s(literal 4 binary64)) (-.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(-.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 ky ky)))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (neg.f64 (neg.f64 ky)) (neg.f64 ky)))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (neg.f64 (fabs.f64 ky)) (fabs.f64 ky)))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (neg.f64 ky) ky))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 ky (neg.f64 ky)))
(-.f64 (*.f64 ky ky) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(-.f64 (*.f64 ky ky) (*.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 kx))))
(-.f64 (*.f64 ky ky) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 kx)))
(-.f64 (*.f64 ky ky) (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 kx))))
(+.f64 (/.f64 (pow.f64 ky #s(literal 6 binary64)) (+.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (*.f64 ky (sin.f64 kx)) #s(literal 2 binary64))) (pow.f64 ky #s(literal 4 binary64)))) (/.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (+.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (*.f64 ky (sin.f64 kx)) #s(literal 2 binary64))) (pow.f64 ky #s(literal 4 binary64)))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 ky ky))
(+.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(*.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 kx))))
(*.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 kx))))
(*.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(*.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 (log.f64 (sin.f64 kx))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/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) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 kx)))
(neg.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 kx))))
(-.f64 (/.f64 (cos.f64 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 2 binary64))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
#s(literal 2 binary64)
#s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)
(*.f64 th (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 2 binary64)) #s(literal 1 binary64)) th) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal -1 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 3 binary64)) #s(literal -1 binary64)) th) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th)) (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 2 binary64))))
(/.f64 (*.f64 th (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 2 binary64)) #s(literal 1 binary64))) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal -1 binary64)))
(/.f64 (*.f64 th (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 3 binary64)) #s(literal -1 binary64))) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th)) (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 2 binary64))))
(fma.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) th (*.f64 #s(literal 1 binary64) th))
(fma.f64 #s(literal 1 binary64) th (*.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) th))
(fma.f64 th (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) (*.f64 th #s(literal 1 binary64)))
(fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th)))
(+.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) th) (*.f64 #s(literal 1 binary64) th))
(+.f64 (*.f64 #s(literal 1 binary64) th) (*.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) th))
(+.f64 (*.f64 th (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th)) (*.f64 th #s(literal 1 binary64)))
(+.f64 (*.f64 th #s(literal 1 binary64)) (*.f64 th (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal -1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th)) (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal -1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th)) (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 2 binary64))))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (neg.f64 th)) (neg.f64 th) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (fabs.f64 th)) (fabs.f64 th) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) (*.f64 th #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th #s(literal 1 binary64))
(fma.f64 (neg.f64 th) (*.f64 (neg.f64 th) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64))) #s(literal 1 binary64))
(fma.f64 (fabs.f64 th) (*.f64 (fabs.f64 th) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64))) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 (*.f64 th th) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 1 binary64))
(fma.f64 (*.f64 th th) (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 th th) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 th (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 2 binary64)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal -1 binary64))))
(-.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th)) th))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64))) (*.f64 th th)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 th th)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 3 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th)) (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th)) (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th) th))
(/.f64 (-.f64 #s(literal 1/36 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal 2 binary64))) (-.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal 2 binary64)) #s(literal 1/36 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal -1/6 binary64))))
(/.f64 (neg.f64 (+.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal -1/6 binary64) (-.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal -1/6 binary64)))
(/.f64 (+.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal 3 binary64))) (+.f64 #s(literal 1/36 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) (*.f64 #s(literal -1/6 binary64) th)))))
(/.f64 (+.f64 #s(literal -1/216 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal 3 binary64))) (fma.f64 #s(literal -1/6 binary64) (-.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal 2 binary64))))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (neg.f64 th)) (neg.f64 th) #s(literal -1/6 binary64))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (fabs.f64 th)) (fabs.f64 th) #s(literal -1/6 binary64))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th #s(literal -1/6 binary64))
(fma.f64 (neg.f64 th) (*.f64 (neg.f64 th) (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64))) #s(literal -1/6 binary64))
(fma.f64 (fabs.f64 th) (*.f64 (fabs.f64 th) (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64))) #s(literal -1/6 binary64))
(fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64))
(fma.f64 (*.f64 th th) (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) #s(literal -1/6 binary64))
(fma.f64 th (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) #s(literal -1/6 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal -1/6 binary64))) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal -1/6 binary64))))
(-.f64 #s(literal -1/6 binary64) (*.f64 (neg.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th)) th))
(-.f64 #s(literal -1/6 binary64) (*.f64 (neg.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64))) (*.f64 th th)))
(-.f64 #s(literal -1/6 binary64) (*.f64 (neg.f64 (*.f64 th th)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal 3 binary64)) (fma.f64 #s(literal -1/6 binary64) (-.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal 2 binary64)))) (/.f64 #s(literal -1/216 binary64) (fma.f64 #s(literal -1/6 binary64) (-.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th) #s(literal -1/6 binary64))
(+.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) th) th))
(/.f64 (-.f64 #s(literal 1/14400 binary64) (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)) #s(literal 2 binary64))) (-.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (*.f64 th th))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1/14400 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)) #s(literal 1/120 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/128024064000 binary64) (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal 1/1728000 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (*.f64 (*.f64 th th) #s(literal -1/604800 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)) #s(literal 1/120 binary64)))
(/.f64 (fma.f64 #s(literal -1/128024064000 binary64) (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal 1/1728000 binary64)) (+.f64 #s(literal 1/14400 binary64) (-.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)) #s(literal 2 binary64)) (*.f64 (*.f64 th th) #s(literal -1/604800 binary64)))))
(/.f64 (fma.f64 #s(literal -1/128024064000 binary64) (pow.f64 (*.f64 th th) #s(literal 3 binary64)) #s(literal 1/1728000 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (*.f64 (*.f64 th th) #s(literal -1/604800 binary64))))
(fma.f64 (*.f64 #s(literal -1/5040 binary64) (neg.f64 th)) (neg.f64 th) #s(literal 1/120 binary64))
(fma.f64 (*.f64 #s(literal -1/5040 binary64) (fabs.f64 th)) (fabs.f64 th) #s(literal 1/120 binary64))
(fma.f64 (*.f64 #s(literal -1/5040 binary64) th) th #s(literal 1/120 binary64))
(fma.f64 (neg.f64 th) (*.f64 (neg.f64 th) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64))
(fma.f64 (fabs.f64 th) (*.f64 (fabs.f64 th) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64))
(fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64))
(fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))
(fma.f64 th (*.f64 #s(literal -1/5040 binary64) th) #s(literal 1/120 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)) #s(literal 1/120 binary64))) (/.f64 #s(literal 1/14400 binary64) (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)) #s(literal 1/120 binary64))))
(-.f64 #s(literal 1/120 binary64) (*.f64 #s(literal 1/5040 binary64) (*.f64 th th)))
(-.f64 #s(literal 1/120 binary64) (*.f64 (neg.f64 (*.f64 th th)) #s(literal -1/5040 binary64)))
(-.f64 #s(literal 1/120 binary64) (*.f64 (neg.f64 th) (*.f64 #s(literal -1/5040 binary64) th)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (*.f64 (*.f64 th th) #s(literal -1/604800 binary64)))) (/.f64 #s(literal 1/1728000 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (*.f64 (*.f64 th th) #s(literal -1/604800 binary64)))))
(+.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)) #s(literal 1/120 binary64))
(+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (*.f64 th th)))
#s(literal -1/5040 binary64)
#s(literal 1/120 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 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sin.f64 th))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky)))) #s(literal -2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 2 binary64))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 th ky)) #s(literal 2 binary64)))

eval101.0ms (1.5%)

Memory
-10.0MiB live, 222.5MiB allocated; 31ms collecting garbage
Compiler

Compiled 24 805 to 2 856 computations (88.5% saved)

prune72.0ms (1%)

Memory
-5.2MiB live, 140.5MiB allocated; 12ms collecting garbage
Pruning

55 alts after pruning (50 fresh and 5 done)

PrunedKeptTotal
New71826744
Fresh32427
Picked235
Done022
Total72355778
Accuracy
100.0%
Counts
778 → 55
Alt Table
Click to see full alt table
StatusAccuracyProgram
4.6%
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
67.2%
(/.f64 (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
67.3%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)))))
93.9%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
11.0%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
22.9%
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
43.4%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
48.1%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
23.6%
(*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64))) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
53.3%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
81.4%
(*.f64 (/.f64 (sin.f64 ky) (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 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))) (sin.f64 th))
65.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
81.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
19.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))) #s(approx (sin th) (*.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)))
19.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
32.5%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))) (sin.f64 th))
25.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
17.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
35.7%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
11.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
7.7%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
7.7%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
10.6%
(*.f64 (/.f64 (sin.f64 ky) (exp.f64 (*.f64 (log.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))) #s(literal 1/2 binary64)))) (sin.f64 th))
39.8%
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
23.5%
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
8.9%
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
99.6%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
49.7%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))))
11.0%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
29.9%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky))))
34.3%
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
90.4%
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.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))))
30.9%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
90.4%
(*.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))
20.3%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
48.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
43.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))))
22.8%
#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) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
19.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
21.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
15.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))))
20.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
18.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
53.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
30.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
12.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
19.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.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)))
17.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
17.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
9.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
9.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
9.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
28.9%
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
Compiler

Compiled 3 449 to 2 329 computations (32.5% saved)

series43.0ms (0.6%)

Memory
-5.4MiB live, 86.1MiB allocated; 7ms collecting garbage
Counts
37 → 122
Calls
Call 1
Inputs
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))))
(sin.f64 ky)
ky
#s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.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)))
(*.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))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
#s(literal 1 binary64)
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(sin.f64 kx)
kx
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
#s(literal 2 binary64)
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)
#s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(*.f64 th th)
#s(literal -1/6 binary64)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(*.f64 (sin.f64 ky) th)
#s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(*.f64 kx kx)
#s(literal -1/2 binary64)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
Outputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(/ (sin th) (sin ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(/ 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)))
(/ 1 (pow (sin ky) 2))
(+ (* -1 (/ (pow kx 2) (pow (sin ky) 4))) (/ 1 (pow (sin ky) 2)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6)))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1 (* (pow kx 2) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6))))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(pow (sin ky) 2)
(+ (pow kx 2) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))
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))))
th
(+ th (* -1/2 (/ (* (pow kx 2) th) (pow (sin ky) 2))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* th (* (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 (* th (* (pow (sin ky) 2) (+ (* 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 (sin ky) 2))
(pow kx 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))))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(sin kx)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* -1/2 (/ (pow kx 2) (pow (sin ky) 2)))
(* (pow kx 2) (- (/ 1 (pow kx 2)) (* 1/2 (/ 1 (pow (sin ky) 2)))))
(sqrt (+ (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 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)))
(/ 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)))
(/ 1 (pow (sin kx) 2))
(+ (* -1 (/ (pow ky 2) (pow (sin kx) 4))) (/ 1 (pow (sin kx) 2)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6)))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 2)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1 (* (pow ky 2) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6))))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 2)))
(pow (sin kx) 2)
(+ (pow ky 2) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(/ (* ky th) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (+ (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* th (* (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 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ th (pow (sin kx) 3))) (* -1/5040 (/ th (sin kx)))))))))))))) (/ th (sin kx))))
(* ky th)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) th)) (* 1/120 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)
(/ 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))))
(* -1/2 (/ (pow kx 2) (pow ky 2)))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (* -1/6 (pow kx 2))))) (pow ky 2))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* 1/2 (* (pow ky 2) (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2))))))))) (pow ky 2))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (pow kx 2)) (+ (* 2/135 (pow kx 2)) (* 1/3 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))) (* 1/2 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))))) (pow ky 2))
(/ (pow kx 2) (pow ky 2))
(/ (+ (* 1/3 (* (pow kx 2) (pow ky 2))) (pow kx 2)) (pow ky 2))
(/ (+ (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2))))) (* -1/3 (pow kx 2)))) (pow kx 2)) (pow ky 2))
(/ (+ (* (pow ky 2) (- (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/315 (pow kx 2)) (+ (* 2/135 (pow kx 2)) (* 1/3 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))) (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2))))) (* -1/3 (pow kx 2)))) (pow kx 2)) (pow ky 2))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(* th (sin ky))
(* 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 (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 (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(+ 1 (* -1/6 (pow th 2)))
(* -1/6 (pow th 2))
(pow th 2)
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Calls

9 calls:

TimeVariablePointExpression
9.0ms
ky
@inf
((* (sin ky) (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))))) (sin ky) ky (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (* (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (sin th)) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (sin kx) kx (pow (sin ky) 2) 2 (sin th) th (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (* (* th th) -1/6) (* th th) -1/6 (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/ 1 (sin ky)) (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/ (* kx kx) (pow (sin ky) 2)) (* kx kx) -1/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)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)))
6.0ms
th
@-inf
((* (sin ky) (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))))) (sin ky) ky (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (* (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (sin th)) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (sin kx) kx (pow (sin ky) 2) 2 (sin th) th (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (* (* th th) -1/6) (* th th) -1/6 (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/ 1 (sin ky)) (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/ (* kx kx) (pow (sin ky) 2)) (* kx kx) -1/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)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)))
5.0ms
ky
@0
((* (sin ky) (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))))) (sin ky) ky (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (* (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (sin th)) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (sin kx) kx (pow (sin ky) 2) 2 (sin th) th (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (* (* th th) -1/6) (* th th) -1/6 (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/ 1 (sin ky)) (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/ (* kx kx) (pow (sin ky) 2)) (* kx kx) -1/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)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)))
4.0ms
kx
@inf
((* (sin ky) (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))))) (sin ky) ky (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (* (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (sin th)) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (sin kx) kx (pow (sin ky) 2) 2 (sin th) th (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (* (* th th) -1/6) (* th th) -1/6 (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/ 1 (sin ky)) (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/ (* kx kx) (pow (sin ky) 2)) (* kx kx) -1/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)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)))
4.0ms
ky
@-inf
((* (sin ky) (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))))) (sin ky) ky (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (* (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (sin th)) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (sin kx) kx (pow (sin ky) 2) 2 (sin th) th (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (* (* th th) -1/6) (* th th) -1/6 (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/ 1 (sin ky)) (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/ (* kx kx) (pow (sin ky) 2)) (* kx kx) -1/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)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (+ (pow (sin kx) 2) (pow (sin ky) 2)))

simplify225.0ms (3.2%)

Memory
49.1MiB live, 276.6MiB allocated; 33ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06263447
122533293
095113115
Stop Event
iter limit
node limit
Counts
122 → 119
Calls
Call 1
Inputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(/ (sin th) (sin ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(/ 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)))
(/ 1 (pow (sin ky) 2))
(+ (* -1 (/ (pow kx 2) (pow (sin ky) 4))) (/ 1 (pow (sin ky) 2)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6)))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1 (* (pow kx 2) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6))))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(pow (sin ky) 2)
(+ (pow kx 2) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))
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))))
th
(+ th (* -1/2 (/ (* (pow kx 2) th) (pow (sin ky) 2))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* th (* (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 (* th (* (pow (sin ky) 2) (+ (* 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 (sin ky) 2))
(pow kx 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))))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(sin kx)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* -1/2 (/ (pow kx 2) (pow (sin ky) 2)))
(* (pow kx 2) (- (/ 1 (pow kx 2)) (* 1/2 (/ 1 (pow (sin ky) 2)))))
(sqrt (+ (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 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)))
(/ 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)))
(/ 1 (pow (sin kx) 2))
(+ (* -1 (/ (pow ky 2) (pow (sin kx) 4))) (/ 1 (pow (sin kx) 2)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6)))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 2)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1 (* (pow ky 2) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6))))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 2)))
(pow (sin kx) 2)
(+ (pow ky 2) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(/ (* ky th) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (+ (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* th (* (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 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ th (pow (sin kx) 3))) (* -1/5040 (/ th (sin kx)))))))))))))) (/ th (sin kx))))
(* ky th)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) th)) (* 1/120 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)
(/ 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))))
(* -1/2 (/ (pow kx 2) (pow ky 2)))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (* -1/6 (pow kx 2))))) (pow ky 2))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* 1/2 (* (pow ky 2) (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2))))))))) (pow ky 2))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (pow kx 2)) (+ (* 2/135 (pow kx 2)) (* 1/3 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))) (* 1/2 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))))) (pow ky 2))
(/ (pow kx 2) (pow ky 2))
(/ (+ (* 1/3 (* (pow kx 2) (pow ky 2))) (pow kx 2)) (pow ky 2))
(/ (+ (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2))))) (* -1/3 (pow kx 2)))) (pow kx 2)) (pow ky 2))
(/ (+ (* (pow ky 2) (- (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/315 (pow kx 2)) (+ (* 2/135 (pow kx 2)) (* 1/3 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))) (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2))))) (* -1/3 (pow kx 2)))) (pow kx 2)) (pow ky 2))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(* th (sin ky))
(* 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 (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 (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(+ 1 (* -1/6 (pow th 2)))
(* -1/6 (pow th 2))
(pow th 2)
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Outputs
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 kx kx) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) (sin.f64 th))
(/ (sin th) (sin ky))
(/.f64 (sin.f64 th) (sin.f64 ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(fma.f64 (*.f64 kx kx) (/.f64 (*.f64 #s(literal -1/2 binary64) (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 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 ky)) (*.f64 kx kx)))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (sin.f64 ky)) (*.f64 kx kx)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 ky)))) (*.f64 kx kx) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(/ 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 kx 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 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (*.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 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 ky)) (*.f64 kx kx)) (*.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 kx kx) (neg.f64 (/.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)))
(/ 1 (pow (sin ky) 2))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (* -1 (/ (pow kx 2) (pow (sin ky) 4))) (/ 1 (pow (sin ky) 2)))
(fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6)))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(fma.f64 (-.f64 (*.f64 (+.f64 (/.f64 #s(literal 1 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 kx kx)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1 (* (pow kx 2) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6))))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(fma.f64 (-.f64 (*.f64 (fma.f64 (neg.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 kx kx) (+.f64 (/.f64 #s(literal 1 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 kx kx)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(+ (pow kx 2) (pow (sin ky) 2))
(fma.f64 kx kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(fma.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))
(fma.f64 (fma.f64 (fma.f64 #s(literal 2/45 binary64) (*.f64 kx kx) #s(literal -1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(*.f64 (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(*.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 kx kx) #s(literal -1/6 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(*.f64 (fma.f64 (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)) (*.f64 kx kx) #s(literal 1 binary64)) kx)
th
(+ th (* -1/2 (/ (* (pow kx 2) th) (pow (sin ky) 2))))
(fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 th (pow.f64 (sin.f64 ky) #s(literal 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 kx kx)))) (*.f64 kx kx) th)
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* th (* (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 (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (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 (*.f64 th (pow.f64 (sin.f64 ky) #s(literal 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 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))) (*.f64 kx kx) th)
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (*.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 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.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 kx kx) (neg.f64 (/.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) (pow (sin ky) 2))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow kx 2)
(*.f64 kx kx)
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (/.f64 (*.f64 kx kx) (sin.f64 ky)) #s(literal 1/2 binary64) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/3 binary64)) (*.f64 kx kx)) #s(literal 1/2 binary64)) (sin.f64 ky)) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 ky)) (*.f64 kx kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 ky))) (*.f64 kx kx) (sin.f64 ky))
(* (* (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 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (sin.f64 th)))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(sin kx)
(sin.f64 kx)
(* (* 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 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 ky))
(* -1/2 (/ (pow kx 2) (pow (sin ky) 2)))
(/.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(* (pow kx 2) (- (/ 1 (pow kx 2)) (* 1/2 (/ 1 (pow (sin ky) 2)))))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 kx kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(/ (* ky (sin th)) (sin kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/12 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/120 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 th)) (fma.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (*.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)) (fma.f64 #s(literal -1/240 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 (*.f64 #s(literal -1/5040 binary64) (sin.f64 th)) (sin.f64 kx))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(*.f64 (fma.f64 (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)) (*.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 ky ky) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 kx)) (*.f64 ky ky)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 th)) (sin.f64 kx)) (*.f64 ky ky)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(/ 1 (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 ky ky) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (/.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 (*.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 kx)) (*.f64 ky ky)) (/.f64 #s(literal 1 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 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 kx)) (*.f64 ky ky)) (*.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 ky ky) (neg.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)))
(/ 1 (pow (sin kx) 2))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+ (* -1 (/ (pow ky 2) (pow (sin kx) 4))) (/ 1 (pow (sin kx) 2)))
(fma.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6)))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 2)))
(fma.f64 (-.f64 (*.f64 (+.f64 (/.f64 #s(literal 1 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 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1 (* (pow ky 2) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6))))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 2)))
(fma.f64 (-.f64 (*.f64 (fma.f64 (neg.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 ky ky) (+.f64 (/.f64 #s(literal 1 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 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(+ (pow ky 2) (pow (sin kx) 2))
(fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(fma.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(pow ky 2)
(*.f64 ky ky)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) (*.f64 ky ky) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky))
(/ (* ky th) (sin kx))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(*.f64 (fma.f64 (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/6 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64))) (*.f64 ky ky) (/.f64 th (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ th (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) th) (*.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)) (fma.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1/12 binary64) (*.f64 (/.f64 th (sin.f64 kx)) #s(literal 1/120 binary64)))) (*.f64 ky ky) (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/6 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64)))) (*.f64 ky ky) (/.f64 th (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (+ (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* th (* (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 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ th (pow (sin kx) 3))) (* -1/5040 (/ th (sin kx)))))))))))))) (/ th (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) th) (*.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 kx)) (fma.f64 (*.f64 #s(literal -1/12 binary64) th) (*.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)) (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/5040 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/240 binary64))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) th) (*.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 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1/12 binary64))))) (*.f64 ky ky) (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/6 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64)))) (*.f64 ky ky) (/.f64 th (sin.f64 kx))) ky)
(* ky th)
(*.f64 th ky)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) th)) (* 1/120 th)))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 ky ky) (*.f64 #s(literal -1/6 binary64) th)) (*.f64 ky ky) th) 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)
(/ ky (sin kx))
(/.f64 ky (sin.f64 kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(*.f64 (fma.f64 (neg.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(*.f64 (fma.f64 (-.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/6 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/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))))
(*.f64 (fma.f64 (-.f64 (*.f64 (+.f64 (fma.f64 (-.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (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 (*.f64 #s(literal -1/12 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 (/.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/6 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) ky)
(* -1/2 (/ (pow kx 2) (pow ky 2)))
(*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (* -1/6 (pow kx 2))))) (pow ky 2))
(/.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* 1/2 (* (pow ky 2) (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2))))))))) (pow ky 2))
(/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky))
(/ (+ (* -1/2 (pow kx 2)) (* (pow ky 2) (+ 1 (+ (* -1/6 (pow kx 2)) (* (pow ky 2) (+ (* 1/2 (* (pow ky 2) (+ (* -1/315 (pow kx 2)) (+ (* 2/135 (pow kx 2)) (* 1/3 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))) (* 1/2 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))))) (pow ky 2))
(/.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (fma.f64 (*.f64 kx kx) #s(literal 11/945 binary64) (*.f64 (*.f64 kx kx) #s(literal -1/45 binary64))) (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64))) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky))
(/ (pow kx 2) (pow ky 2))
(*.f64 (/.f64 kx ky) (/.f64 kx ky))
(/ (+ (* 1/3 (* (pow kx 2) (pow ky 2))) (pow kx 2)) (pow ky 2))
(/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))
(/ (+ (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2))))) (* -1/3 (pow kx 2)))) (pow kx 2)) (pow ky 2))
(/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))
(/ (+ (* (pow ky 2) (- (* (pow ky 2) (- (* -1 (* (pow ky 2) (+ (* -1/315 (pow kx 2)) (+ (* 2/135 (pow kx 2)) (* 1/3 (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2)))))))) (+ (* -1/9 (pow kx 2)) (* 2/45 (pow kx 2))))) (* -1/3 (pow kx 2)))) (pow kx 2)) (pow ky 2))
(/.f64 (fma.f64 (fma.f64 (fma.f64 (neg.f64 (fma.f64 (*.f64 kx kx) #s(literal 11/945 binary64) (*.f64 (*.f64 kx kx) #s(literal -1/45 binary64)))) (*.f64 ky ky) (*.f64 (*.f64 (neg.f64 kx) kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(fma.f64 (/.f64 (*.f64 ky ky) (sin.f64 kx)) #s(literal 1/2 binary64) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/3 binary64)) (*.f64 ky ky)) #s(literal 1/2 binary64)) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (*.f64 ky ky)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) (*.f64 ky ky) (sin.f64 kx))
(* th (sin ky))
(*.f64 (sin.f64 ky) th)
(* 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 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 th (*.f64 (sin.f64 ky) th)) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (*.f64 th (*.f64 (sin.f64 ky) th)) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)))) (pow.f64 th #s(literal 3 binary64)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(* 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 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 th (*.f64 (sin.f64 ky) th)) (sin.f64 ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 ky) (*.f64 #s(literal -1/5040 binary64) (*.f64 th (*.f64 (sin.f64 ky) th))))) (*.f64 (*.f64 th th) (*.f64 th th)))) th)
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 th th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 (*.f64 th th) (*.f64 th 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 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (pow.f64 th #s(literal 3 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(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)) (pow.f64 th #s(literal 3 binary64)) th)
(+ 1 (* -1/6 (pow th 2)))
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(* -1/6 (pow th 2))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(pow th 2)
(*.f64 th 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)))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
(*.f64 (neg.f64 (-.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (*.f64 th th)))) (pow.f64 th #s(literal 3 binary64)))

rewrite90.0ms (1.3%)

Memory
-22.3MiB live, 131.1MiB allocated; 29ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
060451
089443
1247436
01569374
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
37 → 267
Calls
Call 1
Inputs
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))))
(sin.f64 ky)
ky
#s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.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)))
(*.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))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
#s(literal 1 binary64)
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(sin.f64 kx)
kx
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
#s(literal 2 binary64)
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)
#s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(*.f64 th th)
#s(literal -1/6 binary64)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
(*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))
(*.f64 (sin.f64 ky) th)
#s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(*.f64 kx kx)
#s(literal -1/2 binary64)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
Outputs
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 ky))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(sin.f64 ky)
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1 binary64)))
ky
#s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.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)) (sin.f64 th))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (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 (pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/4 binary64)))
(*.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sqrt.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))) #s(literal 1/2 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (-.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 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (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 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (-.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 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(neg.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(neg.f64 (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1 binary64)))
#s(literal 1 binary64)
(/.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 3 binary64))) (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 3 binary64))) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(/.f64 (+.f64 (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 2 binary64))
(/.f64 (+.f64 (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (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 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (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 (fma.f64 (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal 4 binary64))
(/.f64 (fma.f64 (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) #s(literal 4 binary64))
(/.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 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.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 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (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 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (-.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))))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))) (*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 ky)))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 kx))) (*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 ky)))
(fma.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (neg.f64 (fabs.f64 (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 ky))) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 ky))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 ky))) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 ky))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 kx))) (*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 ky)))
(fma.f64 (fabs.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (fabs.f64 (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 ky))) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 ky))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))) (*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 ky)))
(fma.f64 (exp.f64 (log.f64 (sin.f64 kx))) (exp.f64 (log.f64 (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (exp.f64 (log.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 ky))) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (exp.f64 (log.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 ky))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)) (*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 ky)))
(fma.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)) (*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 ky)))
(fma.f64 (fabs.f64 (sin.f64 kx)) (fabs.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 ky)) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 ky)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(-.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))
(-.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #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 #s(literal 1/2 binary64) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(-.f64 #s(literal 1/2 binary64) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(-.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(-.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (fabs.f64 (sin.f64 kx))) (fabs.f64 (sin.f64 kx))))
(-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 (/.f64 (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 kx) (sin.f64 ky)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (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 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (-.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 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (-.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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 ky)))
(+.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 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 1 binary64))
(sin.f64 kx)
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal 1 binary64)))
kx
(*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 ky))))
(*.f64 (neg.f64 (fabs.f64 (sin.f64 ky))) (neg.f64 (fabs.f64 (sin.f64 ky))))
(*.f64 (fabs.f64 (fabs.f64 (sin.f64 ky))) (fabs.f64 (fabs.f64 (sin.f64 ky))))
(*.f64 (exp.f64 (log.f64 (sin.f64 ky))) (exp.f64 (log.f64 (sin.f64 ky))))
(*.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)))
(*.f64 (fabs.f64 (sin.f64 ky)) (fabs.f64 (sin.f64 ky)))
(*.f64 (sin.f64 ky) (sin.f64 ky))
(pow.f64 (exp.f64 (log.f64 (sin.f64 ky))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -2 binary64))
(/.f64 (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64))
(neg.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(-.f64 (/.f64 (cos.f64 #s(literal 0 binary64)) #s(literal 2 binary64)) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))
(fabs.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))
#s(literal 2 binary64)
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)
(*.f64 th #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))))
#s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))
(*.f64 (*.f64 #s(literal -1/6 binary64) (neg.f64 th)) (neg.f64 th))
(*.f64 (*.f64 #s(literal -1/6 binary64) (fabs.f64 th)) (fabs.f64 th))
(*.f64 (*.f64 #s(literal -1/6 binary64) th) th)
(*.f64 (neg.f64 th) (*.f64 (neg.f64 th) #s(literal -1/6 binary64)))
(*.f64 (fabs.f64 th) (*.f64 (fabs.f64 th) #s(literal -1/6 binary64)))
(*.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(*.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) #s(literal 1 binary64)))
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
(*.f64 #s(literal 1 binary64) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))
(*.f64 th (*.f64 (*.f64 #s(literal -1/6 binary64) th) #s(literal 1 binary64)))
(*.f64 th (*.f64 #s(literal -1/6 binary64) th))
(/.f64 (*.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 2 binary64))
(*.f64 (neg.f64 (neg.f64 th)) (neg.f64 (neg.f64 th)))
(*.f64 (neg.f64 (fabs.f64 th)) (neg.f64 (fabs.f64 th)))
(*.f64 (fabs.f64 (fabs.f64 th)) (fabs.f64 (fabs.f64 th)))
(*.f64 (pow.f64 th #s(literal 1 binary64)) (pow.f64 th #s(literal 1 binary64)))
(*.f64 (pow.f64 th #s(literal 1 binary64)) th)
(*.f64 (neg.f64 th) (neg.f64 th))
(*.f64 (fabs.f64 th) (fabs.f64 th))
(*.f64 th th)
(pow.f64 (neg.f64 th) #s(literal 2 binary64))
(pow.f64 (fabs.f64 th) #s(literal 2 binary64))
(pow.f64 th #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 th) th))
(neg.f64 (*.f64 th (neg.f64 th)))
(fabs.f64 (*.f64 th th))
(exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))
#s(literal -1/6 binary64)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (*.f64 th (sin.f64 ky))))
(*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) th)
(*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky))
(*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (*.f64 th (sin.f64 ky)))
(*.f64 (*.f64 th (sin.f64 ky)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 th (*.f64 (sin.f64 ky) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))))
(*.f64 (sin.f64 ky) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th))
(*.f64 th (sin.f64 ky))
(*.f64 (sin.f64 ky) th)
#s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.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)))
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 ky)))
(/.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
(neg.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(neg.f64 (/.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 ky))))
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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 (sin.f64 th) #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))))
#s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(literal 2 binary64) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 2 binary64))) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 2 binary64)))
(/.f64 (fma.f64 #s(literal 2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)))) (*.f64 #s(literal 2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)))
(/.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(/.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64))))
(fma.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))
(fma.f64 (/.f64 (*.f64 kx kx) (neg.f64 (sin.f64 ky))) (/.f64 #s(literal -1/2 binary64) (neg.f64 (sin.f64 ky))) #s(literal 1 binary64))
(fma.f64 (/.f64 (*.f64 kx kx) (fabs.f64 (sin.f64 ky))) (/.f64 #s(literal -1/2 binary64) (fabs.f64 (sin.f64 ky))) #s(literal 1 binary64))
(fma.f64 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (/.f64 #s(literal -1/2 binary64) (sin.f64 ky)) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal 1 binary64))
(fma.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64))
(fma.f64 kx (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))))
(-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx)) #s(literal -1/2 binary64)))
(+.f64 (/.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(*.f64 (/.f64 (*.f64 kx kx) (-.f64 (cos.f64 #s(literal 0 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64))
(*.f64 (/.f64 (neg.f64 kx) (neg.f64 (sin.f64 ky))) (/.f64 (neg.f64 kx) (neg.f64 (sin.f64 ky))))
(*.f64 (/.f64 (neg.f64 kx) (fabs.f64 (sin.f64 ky))) (/.f64 (neg.f64 kx) (fabs.f64 (sin.f64 ky))))
(*.f64 (/.f64 (neg.f64 kx) (sin.f64 ky)) (/.f64 (neg.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (fabs.f64 kx) (neg.f64 (sin.f64 ky))) (/.f64 (fabs.f64 kx) (neg.f64 (sin.f64 ky))))
(*.f64 (/.f64 (fabs.f64 kx) (fabs.f64 (sin.f64 ky))) (/.f64 (fabs.f64 kx) (fabs.f64 (sin.f64 ky))))
(*.f64 (/.f64 (fabs.f64 kx) (sin.f64 ky)) (/.f64 (fabs.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 kx (neg.f64 (sin.f64 ky))) (/.f64 kx (neg.f64 (sin.f64 ky))))
(*.f64 (/.f64 kx (fabs.f64 (sin.f64 ky))) (/.f64 kx (fabs.f64 (sin.f64 ky))))
(*.f64 (/.f64 kx (sin.f64 ky)) (/.f64 kx (sin.f64 ky)))
(*.f64 (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx)
(*.f64 (neg.f64 kx) (/.f64 (neg.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(*.f64 (fabs.f64 kx) (/.f64 (fabs.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (/.f64 (*.f64 kx kx) (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 ky)))
(/.f64 (/.f64 (*.f64 kx kx) (fabs.f64 (sin.f64 ky))) (fabs.f64 (sin.f64 ky)))
(/.f64 (/.f64 (*.f64 kx kx) (sin.f64 ky)) (sin.f64 ky))
(/.f64 (*.f64 (neg.f64 kx) kx) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(neg.f64 (/.f64 (*.f64 (neg.f64 kx) kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(neg.f64 (/.f64 (*.f64 kx kx) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(*.f64 (neg.f64 (neg.f64 kx)) (neg.f64 (neg.f64 kx)))
(*.f64 (neg.f64 (fabs.f64 kx)) (neg.f64 (fabs.f64 kx)))
(*.f64 (fabs.f64 (fabs.f64 kx)) (fabs.f64 (fabs.f64 kx)))
(*.f64 (pow.f64 kx #s(literal 1 binary64)) (pow.f64 kx #s(literal 1 binary64)))
(*.f64 (pow.f64 kx #s(literal 1 binary64)) kx)
(*.f64 (neg.f64 kx) (neg.f64 kx))
(*.f64 (fabs.f64 kx) (fabs.f64 kx))
(*.f64 kx kx)
(pow.f64 (neg.f64 kx) #s(literal 2 binary64))
(pow.f64 (fabs.f64 kx) #s(literal 2 binary64))
(pow.f64 kx #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 kx) kx))
(fabs.f64 (*.f64 kx kx))
(exp.f64 (*.f64 (log.f64 kx) #s(literal 2 binary64)))
#s(literal -1/2 binary64)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(pow.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
#s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))

eval95.0ms (1.4%)

Memory
10.2MiB live, 106.5MiB allocated; 13ms collecting garbage
Compiler

Compiled 21 038 to 2 649 computations (87.4% saved)

prune115.0ms (1.7%)

Memory
2.9MiB live, 191.4MiB allocated; 22ms collecting garbage
Pruning

74 alts after pruning (66 fresh and 8 done)

PrunedKeptTotal
New49126517
Fresh54045
Picked235
Done055
Total49874572
Accuracy
100.0%
Counts
572 → 74
Alt Table
Click to see full alt table
StatusAccuracyProgram
67.2%
(/.f64 (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
67.3%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)))))
93.9%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
11.0%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
22.9%
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
43.4%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
48.1%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
23.6%
(*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64))) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
53.3%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
81.4%
(*.f64 (/.f64 (sin.f64 ky) (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 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))) (sin.f64 th))
65.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
81.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
19.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))) #s(approx (sin th) (*.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)))
19.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
32.5%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))) (sin.f64 th))
25.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
17.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
35.7%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
28.7%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
11.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
7.7%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
7.7%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
39.8%
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
23.5%
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
8.9%
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
99.6%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
49.7%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))))
11.0%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
29.9%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky))))
34.3%
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
99.5%
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))))
90.1%
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (*.f64 (pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/4 binary64))) (sin.f64 th))))
75.2%
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 th))))
75.7%
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))) (sin.f64 th))))
35.0%
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))))
39.8%
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))))
29.9%
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
34.3%
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 th))))
30.9%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
90.4%
(*.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))
20.6%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
19.5%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
10.4%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
12.4%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
27.2%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 kx ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
10.4%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky)))) (sin.f64 th))
3.1%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky)))) (sin.f64 th))
43.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))))
19.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
21.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
15.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))))
20.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
18.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
14.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky))))))
14.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))))))
13.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))))
14.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky)))))
18.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) th))
17.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky)))
53.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
30.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
12.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)))
19.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.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)))
17.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
17.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
9.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
9.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
9.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
9.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
9.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64))) th)))
9.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
28.9%
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
Compiler

Compiled 5 823 to 2 243 computations (61.5% saved)

regimes253.0ms (3.6%)

Memory
-13.4MiB live, 464.4MiB allocated; 48ms collecting garbage
Counts
93 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 kx ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (exp.f64 (*.f64 (log.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))) #s(literal 1/2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (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) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (+.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))) #s(approx (sin th) (*.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 #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 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.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))))
(*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64))) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)))))
(/.f64 (*.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64))) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 1/2 binary64))) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/2 binary64))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (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 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))) (sin.f64 th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (*.f64 (pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/4 binary64))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal 1/12 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/120 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 th) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx)))))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Calls

9 calls:

34.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
29.0ms
ky
28.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
28.0ms
(sin.f64 kx)
27.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
99.7%1(sin.f64 th)
99.7%1(sin.f64 kx)
99.7%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
99.7%1(sin.f64 ky)
99.7%1(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
99.7%1(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
99.7%1kx
99.7%1ky
99.7%1th
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes229.0ms (3.3%)

Memory
6.1MiB live, 287.3MiB allocated; 37ms collecting garbage
Counts
72 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 kx ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (exp.f64 (*.f64 (log.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))) #s(literal 1/2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (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) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
Outputs
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
Calls

9 calls:

48.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)))))
35.0ms
(sin.f64 th)
24.0ms
(sin.f64 kx)
23.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))
22.0ms
kx
Results
AccuracySegmentsBranch
99.6%1(sin.f64 kx)
99.6%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
99.6%1kx
99.6%1(sin.f64 th)
99.6%1(sin.f64 ky)
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(*.f64 (/.f64 (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%1ky
99.6%1th
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes225.0ms (3.2%)

Memory
-5.9MiB live, 319.2MiB allocated; 29ms collecting garbage
Counts
71 → 6
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 kx ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (exp.f64 (*.f64 (log.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))) #s(literal 1/2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (fma.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (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) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))))))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (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))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))))
Calls

9 calls:

52.0ms
kx
34.0ms
(sin.f64 th)
21.0ms
(sin.f64 ky)
21.0ms
(sin.f64 kx)
20.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Results
AccuracySegmentsBranch
76.0%4(sin.f64 th)
62.3%4(sin.f64 kx)
58.5%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
75.5%3(sin.f64 ky)
83.4%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)))))
72.4%5(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
61.4%3kx
78.2%4ky
73.2%2th
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes20.0ms (0.3%)

Memory
37.5MiB live, 37.5MiB allocated; 0ms collecting garbage
Counts
67 → 6
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 kx ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (exp.f64 (*.f64 (log.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))) #s(literal 1/2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))))
Calls

1 calls:

16.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
83.3%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)

regimes102.0ms (1.5%)

Memory
-15.7MiB live, 49.5MiB allocated; 77ms collecting garbage
Counts
64 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 kx ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (exp.f64 (*.f64 (log.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))) #s(literal 1/2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

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

Compiled 13 to 11 computations (15.4% saved)

regimes21.0ms (0.3%)

Memory
1.1MiB live, 46.0MiB allocated; 6ms collecting garbage
Counts
62 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 kx ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (exp.f64 (*.f64 (log.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))) #s(literal 1/2 binary64)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

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

Compiled 13 to 11 computations (15.4% saved)

regimes24.0ms (0.3%)

Memory
-28.8MiB live, 61.6MiB allocated; 7ms collecting garbage
Counts
61 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 kx ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (exp.f64 (*.f64 (log.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))) #s(literal 1/2 binary64)))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

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

Compiled 13 to 11 computations (15.4% saved)

regimes21.0ms (0.3%)

Memory
3.9MiB live, 58.8MiB allocated; 5ms collecting garbage
Counts
59 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 kx ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

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

Compiled 13 to 11 computations (15.4% saved)

regimes19.0ms (0.3%)

Memory
-4.3MiB live, 42.0MiB allocated; 2ms collecting garbage
Counts
58 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 kx ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

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
80.6%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes92.0ms (1.3%)

Memory
9.3MiB live, 152.0MiB allocated; 12ms collecting garbage
Counts
56 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 kx ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

5 calls:

27.0ms
ky
18.0ms
(sin.f64 th)
16.0ms
th
14.0ms
(sin.f64 ky)
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)))))
Results
AccuracySegmentsBranch
42.4%2(sin.f64 th)
42.2%2th
66.4%3(sin.f64 ky)
66.3%2ky
72.0%3(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 19 to 25 computations (-31.6% saved)

regimes111.0ms (1.6%)

Memory
26.5MiB live, 120.2MiB allocated; 4ms collecting garbage
Counts
52 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 kx ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

4 calls:

44.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)))))
37.0ms
ky
13.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))
13.0ms
(sin.f64 ky)
Results
AccuracySegmentsBranch
63.8%4(sin.f64 ky)
63.7%3ky
53.7%6(*.f64 (/.f64 (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))
66.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)))))
Compiler

Compiled 32 to 31 computations (3.1% saved)

regimes64.0ms (0.9%)

Memory
-17.3MiB live, 121.2MiB allocated; 14ms collecting garbage
Counts
50 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 kx ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

4 calls:

18.0ms
ky
16.0ms
kx
13.0ms
(sin.f64 ky)
12.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
49.4%2kx
54.6%4(sin.f64 ky)
48.5%3ky
61.0%3(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 17 to 21 computations (-23.5% saved)

regimes41.0ms (0.6%)

Memory
5.2MiB live, 97.4MiB allocated; 4ms collecting garbage
Counts
49 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 kx ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) th))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky)))) (sin.f64 ky))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 th))))
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 #s(approx (/ (sin 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
Outputs
(*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

3 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)))))
12.0ms
(sin.f64 kx)
12.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Results
AccuracySegmentsBranch
49.4%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
53.5%3(sin.f64 kx)
56.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 19 to 21 computations (-10.5% saved)

regimes20.0ms (0.3%)

Memory
-35.1MiB live, 27.5MiB allocated; 13ms collecting garbage
Counts
41 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) #s(approx (/ 1 (sin ky)) (/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 (/.f64 (*.f64 kx kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (*.f64 (/.f64 (*.f64 kx kx) ky) (/.f64 #s(literal -1/2 binary64) ky)))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (*.f64 (/.f64 kx ky) (/.f64 kx ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx)) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) #s(approx (sin ky) (*.f64 (fma.f64 (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)) (*.f64 ky ky) #s(literal 1 binary64)) ky))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) #s(approx (+ (* (/ (* kx kx) (pow (sin ky) 2)) -1/2) 1) (/.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/30 binary64)) (*.f64 ky ky) (fma.f64 (*.f64 kx kx) #s(literal -1/6 binary64) #s(literal 1 binary64))) (*.f64 ky ky) (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64))) (*.f64 ky ky)))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) #s(approx (sin th) (*.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)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (fma.f64 #s(approx (/ (* kx kx) (pow (sin ky) 2)) (/.f64 (fma.f64 (fma.f64 (neg.f64 (*.f64 (*.f64 kx kx) #s(literal -1/15 binary64))) (*.f64 ky ky) (*.f64 #s(literal 1/3 binary64) (*.f64 kx kx))) (*.f64 ky ky) (*.f64 kx kx)) (*.f64 ky ky))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64))) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))) (sin.f64 th))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) #s(approx (+ (* ky ky) (pow (sin kx) 2)) (*.f64 ky ky))))) #s(approx (sin th) (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)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) #s(approx (sin th) (*.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)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(approx (sin th) (*.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) th) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (sin.f64 ky)) 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:

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

regimes8.0ms (0.1%)

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

1 calls:

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

regimes59.0ms (0.9%)

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

7 calls:

18.0ms
(sin.f64 ky)
9.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))
6.0ms
kx
6.0ms
(sin.f64 kx)
6.0ms
ky
Results
AccuracySegmentsBranch
35.3%2ky
37.9%3(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
36.6%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
36.6%2kx
35.4%2(sin.f64 ky)
37.0%3(sin.f64 kx)
43.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 39 to 44 computations (-12.8% saved)

regimes20.0ms (0.3%)

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

6 calls:

4.0ms
th
3.0ms
(sin.f64 th)
3.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
3.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
3.0ms
kx
Results
AccuracySegmentsBranch
35.9%3(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
30.0%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
30.0%1kx
30.0%1th
30.0%1(sin.f64 th)
35.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 37 to 40 computations (-8.1% saved)

regimes29.0ms (0.4%)

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

9 calls:

8.0ms
ky
3.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
2.0ms
(sin.f64 kx)
2.0ms
th
2.0ms
(sin.f64 th)
Results
AccuracySegmentsBranch
20.8%2kx
17.5%1th
20.8%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
17.5%1(sin.f64 th)
24.2%2(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
20.6%2ky
20.9%2(sin.f64 ky)
20.1%2(sin.f64 kx)
23.5%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes5.0ms (0.1%)

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

1 calls:

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))
Results
AccuracySegmentsBranch
23.6%2(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes12.0ms (0.2%)

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

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

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

9 calls:

1.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
1.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
1.0ms
(sin.f64 kx)
1.0ms
(sin.f64 th)
1.0ms
(sin.f64 ky)
Results
AccuracySegmentsBranch
9.6%1th
9.6%1(sin.f64 th)
9.6%1(sin.f64 kx)
9.6%1ky
9.6%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
9.6%1kx
9.6%1(sin.f64 ky)
9.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)))))
9.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))
Compiler

Compiled 42 to 51 computations (-21.4% saved)

bsearch1.0ms (0%)

Memory
3.0MiB live, 3.0MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
1.0000000296196399
0.0ms
0.8979966887290678
0.9228046457001079
0.0ms
3.3159893335637194e-20
1.6433568165466318e-19
0.0ms
-0.295356625110424
-0.21222973483305713
0.0ms
-1.0
-0.9993454568456179
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.6MiB live, 2.6MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
1.0000000296196399
0.0ms
0.8979966887290678
0.9228046457001079
0.0ms
3.3159893335637194e-20
1.6433568165466318e-19
0.0ms
-0.295356625110424
-0.21222973483305713
0.0ms
-1.0
-0.9993454568456179
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch3.0ms (0%)

Memory
-43.5MiB live, 3.2MiB allocated; 3ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.8979966887290678
0.9228046457001079
0.0ms
3.3159893335637194e-20
1.6433568165466318e-19
0.0ms
-0.295356625110424
-0.21222973483305713
0.0ms
-1.0
-0.9993454568456179
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
4.1MiB live, 4.1MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.8979966887290678
0.9228046457001079
0.0ms
3.3159893335637194e-20
1.6433568165466318e-19
0.0ms
-0.07064622316956123
1.6929869697515998e-303
0.0ms
-1.0
-0.9993454568456179
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.3MiB live, 2.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.8979966887290678
0.9228046457001079
0.0ms
3.3159893335637194e-20
1.6433568165466318e-19
0.0ms
-0.07064622316956123
1.6929869697515998e-303
0.0ms
-1.0
-0.9993454568456179
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.1MiB live, 2.1MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.8979966887290678
0.9228046457001079
0.0ms
3.3159893335637194e-20
1.6433568165466318e-19
0.0ms
-0.07064622316956123
1.6929869697515998e-303
0.0ms
-1.0
-0.9993454568456179
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.2MiB live, 2.2MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.8979966887290678
0.9228046457001079
0.0ms
3.3159893335637194e-20
1.6433568165466318e-19
0.0ms
-0.07064622316956123
1.6929869697515998e-303
0.0ms
-1.0
-0.9993454568456179
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.6MiB live, 1.6MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.3169904500146845e-6
0.022400502131307343
0.0ms
-0.07064622316956123
1.6929869697515998e-303
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.3MiB live, 2.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.21693074068735796
0.3176524637255753
0.0ms
-0.11833760202898597
-0.1049333066497208
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.7MiB live, 2.7MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.21693074068735796
0.3176524637255753
0.0ms
-0.706312111812451
-0.706026723795574
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

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

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
1.7MiB live, 1.7MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.3169904500146845e-6
0.022400502131307343
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.3169904500146845e-6
0.022400502131307343
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.9MiB live, 0.8MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.3169904500146845e-6
0.022400502131307343
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch8.0ms (0.1%)

Memory
19.0MiB live, 19.0MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
7.0ms
3.517754229731121e-23
1.0043195200279188e-22
Samples
4.0ms80×0valid
Compiler

Compiled 289 to 229 computations (20.8% saved)

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

bsearch0.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.457880778624e-312
2.566693451196472e-302
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.457880778624e-312
2.566693451196472e-302
Compiler

Compiled 19 to 19 computations (0% saved)

simplify64.0ms (0.9%)

Memory
-27.2MiB live, 108.2MiB allocated; 9ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01862291
12312291
23412291
35572291
410822291
541342291
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (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 -1/4 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))) (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 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #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 -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (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 -1/4 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #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 -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (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 -1/4 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (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 -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/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 4722366482869645/2361183241434822606848 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (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 -7926335344172073/72057594037927936 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/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 5404319552844595/18014398509481984 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -6360884113698089/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/18014398509481984 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/18014398509481984 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/2361183241434822606848 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/2361183241434822606848 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/2361183241434822606848 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx))))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 3147611894018681/85070591730234615865843651857942052864 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) #s(literal 404804506615/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.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))))
(if (<=.f64 (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) #s(literal 404804506615/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
Outputs
(*.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 kx) (sin.f64 ky))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (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 -1/4 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))) (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 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #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 -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (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 -1/4 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))) (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 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #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 -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (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 -1/4 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #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 -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (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 -1/4 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #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 -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (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 -1/4 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (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 -1/4 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (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 -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (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 -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 th (sin.f64 ky)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sin.f64 ky) (*.f64 th (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 2076918743413931/41538374868278621028243970633760768 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 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 8106479329266893/9007199254740992 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/72057594037927936 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/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 4722366482869645/2361183241434822606848 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (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 -3602879701896397/72057594037927936 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/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 4722366482869645/2361183241434822606848 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (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 -7926335344172073/72057594037927936 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (pow (sin kx) 2) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/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 5404319552844595/18014398509481984 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -7926335344172073/72057594037927936 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/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 5404319552844595/18014398509481984 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -6360884113698089/9007199254740992 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/18014398509481984 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 5404319552844595/18014398509481984 binary64)) (*.f64 (sin.f64 ky) #s(approx (/ (sin th) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 (sin.f64 th) (sin.f64 kx)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/2361183241434822606848 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/2361183241434822606848 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/2361183241434822606848 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/2361183241434822606848 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx))))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 3147611894018681/85070591730234615865843651857942052864 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) #s(literal 404804506615/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.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))))
(if (<=.f64 (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) #s(literal 404804506615/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))

derivations813.0ms (11.7%)

Memory
49.7MiB live, 747.1MiB allocated; 175ms collecting garbage
Stop Event
fuel
Compiler

Compiled 2 322 to 185 computations (92% saved)

preprocess125.0ms (1.8%)

Memory
-17.6MiB live, 304.5MiB allocated; 41ms collecting garbage
Remove

(negabs ky)

(negabs th)

(abs kx)

Compiler

Compiled 4 742 to 450 computations (90.5% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...