Diagrams.ThreeD.Transform:aboutX from diagrams-lib-1.3.0.3, A

Time bar (total: 3.6s)

start0.0ms (0%)

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

analyze0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated; 0ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 11 to 10 computations (9.1% saved)

sample1.3s (36.5%)

Memory
37.2MiB live, 1 587.1MiB allocated; 322ms collecting garbage
Samples
1.0s8 255×0valid
0.0ms1valid
Precisions
Click to see histograms. Total time spent on operations: 688.0ms
ival-cos: 301.0ms (43.8% of total)
ival-sin: 245.0ms (35.6% of total)
ival-mult!: 81.0ms (11.8% of total)
ival-sub!: 59.0ms (8.6% of total)
adjust: 2.0ms (0.3% of total)
Bogosity

preprocess74.0ms (2.1%)

Memory
-2.3MiB live, 41.2MiB allocated; 10ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03696
111793
232993
3101393
4762893
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.8%
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
Compiler

Compiled 16 to 16 computations (0% saved)

series11.0ms (0.3%)

Memory
32.3MiB live, 32.3MiB allocated; 0ms collecting garbage
Counts
8 → 31
Calls
Call 1
Inputs
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
(*.f64 x (cos.f64 y))
x
(cos.f64 y)
y
(*.f64 z (sin.f64 y))
z
(sin.f64 y)
Outputs
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* -1 (* z (sin y)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (- (* x (cos y)) (* z (sin y)))))
#s(approx (* x (cos y)) #s(hole binary64 (* x (cos y))))
#s(approx x #s(hole binary64 x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* x (+ (cos y) (* -1 (/ (* z (sin y)) x))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* -1 (* x (+ (* -1 (cos y)) (/ (* z (sin y)) x))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* -1 (* y z)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* -1/2 (* x y)) z)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/2 x) (* 1/6 (* y z)))) z)))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* -1/2 (* x (pow y 2))))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* 1/24 (* x (pow y 2))))))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* (pow y 2) (+ (* -1/720 (* x (pow y 2))) (* 1/24 x))))))))
#s(approx (cos y) #s(hole binary64 1))
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2)))))
#s(approx y #s(hole binary64 y))
#s(approx (* z (sin y)) #s(hole binary64 (* y z)))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* -1/6 (* (pow y 2) z))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* 1/120 (* (pow y 2) z))))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* (pow y 2) (+ (* -1/5040 (* (pow y 2) z)) (* 1/120 z)))))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))))
#s(approx (cos y) #s(hole binary64 (cos y)))
#s(approx (* z (sin y)) #s(hole binary64 (* z (sin y))))
#s(approx (sin y) #s(hole binary64 (sin y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ (* -1 (* z (sin y))) (* x (cos y)))))
#s(approx z #s(hole binary64 z))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* z (- (/ (* x (cos y)) z) (sin y)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* -1 (* z (- (* -1 (/ (* x (cos y)) z)) (* -1 (sin y)))))))
Calls

9 calls:

TimeVariablePointExpression
1.0ms
y
@0
((- (* x (cos y)) (* z (sin y))) (* x (cos y)) x (cos y) y (* z (sin y)) z (sin y))
1.0ms
x
@0
((- (* x (cos y)) (* z (sin y))) (* x (cos y)) x (cos y) y (* z (sin y)) z (sin y))
1.0ms
x
@inf
((- (* x (cos y)) (* z (sin y))) (* x (cos y)) x (cos y) y (* z (sin y)) z (sin y))
1.0ms
x
@-inf
((- (* x (cos y)) (* z (sin y))) (* x (cos y)) x (cos y) y (* z (sin y)) z (sin y))
1.0ms
z
@-inf
((- (* x (cos y)) (* z (sin y))) (* x (cos y)) x (cos y) y (* z (sin y)) z (sin y))

rewrite249.0ms (6.9%)

Memory
1.8MiB live, 337.7MiB allocated; 118ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0148530
0156516
1951509
08468482
129431482
Stop Event
saturated
node-limit
iter-limit
Counts
39 → 90
Calls
Call 1
Inputs
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
(*.f64 x (cos.f64 y))
x
(cos.f64 y)
y
(*.f64 z (sin.f64 y))
z
(sin.f64 y)
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* -1 (* z (sin y)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (- (* x (cos y)) (* z (sin y)))))
#s(approx (* x (cos y)) #s(hole binary64 (* x (cos y))))
#s(approx x #s(hole binary64 x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* x (+ (cos y) (* -1 (/ (* z (sin y)) x))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* -1 (* x (+ (* -1 (cos y)) (/ (* z (sin y)) x))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* -1 (* y z)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* -1/2 (* x y)) z)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/2 x) (* 1/6 (* y z)))) z)))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* -1/2 (* x (pow y 2))))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* 1/24 (* x (pow y 2))))))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* (pow y 2) (+ (* -1/720 (* x (pow y 2))) (* 1/24 x))))))))
#s(approx (cos y) #s(hole binary64 1))
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2)))))
#s(approx y #s(hole binary64 y))
#s(approx (* z (sin y)) #s(hole binary64 (* y z)))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* -1/6 (* (pow y 2) z))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* 1/120 (* (pow y 2) z))))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* (pow y 2) (+ (* -1/5040 (* (pow y 2) z)) (* 1/120 z)))))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))))
#s(approx (cos y) #s(hole binary64 (cos y)))
#s(approx (* z (sin y)) #s(hole binary64 (* z (sin y))))
#s(approx (sin y) #s(hole binary64 (sin y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ (* -1 (* z (sin y))) (* x (cos y)))))
#s(approx z #s(hole binary64 z))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* z (- (/ (* x (cos y)) z) (sin y)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* -1 (* z (- (* -1 (/ (* x (cos y)) z)) (* -1 (sin y)))))))
Outputs
(neg.f64 (-.f64 (*.f64 (neg.f64 x) (cos.f64 y)) (*.f64 (neg.f64 z) (sin.f64 y))))
(neg.f64 (-.f64 (*.f64 (sin.f64 y) z) (*.f64 (cos.f64 y) x)))
(fma.f64 (neg.f64 z) (sin.f64 y) (*.f64 (neg.f64 (neg.f64 x)) (cos.f64 y)))
(fma.f64 (neg.f64 z) (sin.f64 y) (neg.f64 (*.f64 (neg.f64 x) (cos.f64 y))))
(fma.f64 (neg.f64 z) (sin.f64 y) (*.f64 (cos.f64 y) x))
(fma.f64 (neg.f64 (sin.f64 y)) z (*.f64 (neg.f64 (neg.f64 x)) (cos.f64 y)))
(fma.f64 (neg.f64 (sin.f64 y)) z (neg.f64 (*.f64 (neg.f64 x) (cos.f64 y))))
(fma.f64 (neg.f64 (sin.f64 y)) z (*.f64 (cos.f64 y) x))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 y) z) (*.f64 (neg.f64 (neg.f64 x)) (cos.f64 y)))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 y) z) (neg.f64 (*.f64 (neg.f64 x) (cos.f64 y))))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 y) z) (*.f64 (cos.f64 y) x))
(fma.f64 (*.f64 (sin.f64 y) z) #s(literal -1 binary64) (*.f64 (neg.f64 (neg.f64 x)) (cos.f64 y)))
(fma.f64 (*.f64 (sin.f64 y) z) #s(literal -1 binary64) (neg.f64 (*.f64 (neg.f64 x) (cos.f64 y))))
(fma.f64 (*.f64 (sin.f64 y) z) #s(literal -1 binary64) (*.f64 (cos.f64 y) x))
(fma.f64 (sin.f64 y) (*.f64 z #s(literal -1 binary64)) (*.f64 (neg.f64 (neg.f64 x)) (cos.f64 y)))
(fma.f64 (sin.f64 y) (*.f64 z #s(literal -1 binary64)) (neg.f64 (*.f64 (neg.f64 x) (cos.f64 y))))
(fma.f64 (sin.f64 y) (*.f64 z #s(literal -1 binary64)) (*.f64 (cos.f64 y) x))
(fma.f64 (sin.f64 y) (neg.f64 z) (*.f64 (neg.f64 (neg.f64 x)) (cos.f64 y)))
(fma.f64 (sin.f64 y) (neg.f64 z) (neg.f64 (*.f64 (neg.f64 x) (cos.f64 y))))
(fma.f64 (sin.f64 y) (neg.f64 z) (*.f64 (cos.f64 y) x))
(fma.f64 (cos.f64 y) x (*.f64 (neg.f64 z) (sin.f64 y)))
(fma.f64 z (neg.f64 (sin.f64 y)) (*.f64 (neg.f64 (neg.f64 x)) (cos.f64 y)))
(fma.f64 z (neg.f64 (sin.f64 y)) (neg.f64 (*.f64 (neg.f64 x) (cos.f64 y))))
(fma.f64 z (neg.f64 (sin.f64 y)) (*.f64 (cos.f64 y) x))
(fma.f64 x (cos.f64 y) (*.f64 (neg.f64 z) (sin.f64 y)))
(-.f64 (*.f64 (neg.f64 z) (sin.f64 y)) (*.f64 (neg.f64 x) (cos.f64 y)))
(-.f64 (*.f64 (cos.f64 y) x) (*.f64 (neg.f64 (neg.f64 z)) (sin.f64 y)))
(-.f64 (*.f64 (cos.f64 y) x) (*.f64 (*.f64 (neg.f64 z) (sin.f64 y)) #s(literal -1 binary64)))
(-.f64 (*.f64 (cos.f64 y) x) (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 y) z)))
(-.f64 (*.f64 (cos.f64 y) x) (neg.f64 (*.f64 (neg.f64 z) (sin.f64 y))))
(-.f64 (*.f64 (cos.f64 y) x) (*.f64 (sin.f64 y) z))
(+.f64 (*.f64 (neg.f64 z) (sin.f64 y)) (*.f64 (neg.f64 (neg.f64 x)) (cos.f64 y)))
(+.f64 (*.f64 (neg.f64 z) (sin.f64 y)) (neg.f64 (*.f64 (neg.f64 x) (cos.f64 y))))
(+.f64 (*.f64 (neg.f64 z) (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 (neg.f64 z) (sin.f64 y)))
(*.f64 (cos.f64 y) x)
(*.f64 x (cos.f64 y))
x
(sin.f64 (+.f64 (neg.f64 y) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 y) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 y (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(cos.f64 (neg.f64 (fabs.f64 y)))
(cos.f64 (fabs.f64 (fabs.f64 y)))
(cos.f64 (neg.f64 y))
(cos.f64 (fabs.f64 y))
(cos.f64 y)
(+.f64 (*.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
y
(*.f64 (sin.f64 y) z)
(*.f64 z (sin.f64 y))
z
(*.f64 (neg.f64 (sin.f64 y)) #s(literal -1 binary64))
(*.f64 #s(literal 1 binary64) (sin.f64 y))
(*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 y)))
(*.f64 (sin.f64 y) #s(literal 1 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (sin.f64 y)) #s(literal 2 binary64))
(neg.f64 (neg.f64 (sin.f64 y)))
(sin.f64 y)
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 (*.f64 (cos.f64 y) x) (*.f64 (sin.f64 y) z)))
#s(approx (* x (cos y)) (*.f64 (cos.f64 y) x))
#s(approx x x)
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (-.f64 (cos.f64 y) (/.f64 (*.f64 (sin.f64 y) z) x)) x))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (-.f64 (cos.f64 y) (/.f64 (*.f64 (sin.f64 y) z) x)) x))
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
#s(approx (* x (cos y)) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/2 binary64) x))
#s(approx (* x (cos y)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 y y) x) (*.f64 #s(literal -1/2 binary64) x)) y) y x))
#s(approx (* x (cos y)) (fma.f64 (*.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 (*.f64 y y) x) (*.f64 #s(literal 1/24 binary64) x)) y) y (*.f64 #s(literal -1/2 binary64) x)) y) y x))
#s(approx (cos y) #s(literal 1 binary64))
#s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos y) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 y y) #s(literal -1/2 binary64)) (*.f64 y y) #s(literal 1 binary64)))
#s(approx (cos y) (fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 y y) #s(literal 1/24 binary64)) (*.f64 y y) #s(literal -1/2 binary64)) y) y #s(literal 1 binary64)))
#s(approx y y)
#s(approx (* z (sin y)) (*.f64 z y))
#s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 (*.f64 y y) z) #s(literal -1/6 binary64) z) y))
#s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 z (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64))) (*.f64 y y) z) y))
#s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 z (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64))) (*.f64 y y) (*.f64 #s(literal -1/6 binary64) z)) y) y z) y))
#s(approx (sin y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y))
#s(approx (sin y) (*.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y))
#s(approx (sin y) (*.f64 (fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y #s(literal 1 binary64)) y))
#s(approx (cos y) (cos.f64 y))
#s(approx (* z (sin y)) (*.f64 (sin.f64 y) z))
#s(approx (sin y) (sin.f64 y))
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 (*.f64 (cos.f64 y) x) (*.f64 (sin.f64 y) z)))
#s(approx z z)
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (-.f64 (/.f64 (*.f64 (cos.f64 y) x) z) (sin.f64 y)) z))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (-.f64 (/.f64 (*.f64 (cos.f64 y) x) z) (sin.f64 y)) z))

eval11.0ms (0.3%)

Memory
-16.9MiB live, 29.1MiB allocated; 4ms collecting garbage
Compiler

Compiled 569 to 259 computations (54.5% saved)

prune8.0ms (0.2%)

Memory
26.1MiB live, 26.1MiB allocated; 0ms collecting garbage
Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New681280
Fresh000
Picked011
Done000
Total681381
Accuracy
99.8%
Counts
81 → 13
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.8%
(fma.f64 (sin.f64 y) (neg.f64 z) (*.f64 (cos.f64 y) x))
99.8%
(fma.f64 (cos.f64 y) x (*.f64 (neg.f64 z) (sin.f64 y)))
99.6%
(-.f64 (*.f64 x (fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) (*.f64 z (sin.f64 y)))
99.8%
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
60.0%
(-.f64 (*.f64 x (cos.f64 y)) #s(approx (* z (sin y)) (*.f64 z y)))
53.6%
(-.f64 (*.f64 x #s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 z (sin.f64 y)))
75.0%
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) (*.f64 z (sin.f64 y)))
49.1%
(-.f64 #s(approx (* x (cos y)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 y y) x) (*.f64 #s(literal -1/2 binary64) x)) y) y x)) (*.f64 z (sin.f64 y)))
45.8%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
45.7%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) z) y x))
46.5%
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
85.4%
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (-.f64 (/.f64 (*.f64 (cos.f64 y) x) z) (sin.f64 y)) z))
41.7%
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
Compiler

Compiled 314 to 308 computations (1.9% saved)

series38.0ms (1.1%)

Memory
-11.6MiB live, 85.2MiB allocated; 14ms collecting garbage
Counts
29 → 99
Calls
Call 1
Inputs
(fma.f64 (cos.f64 y) x (*.f64 (neg.f64 z) (sin.f64 y)))
(cos.f64 y)
y
x
(*.f64 (neg.f64 z) (sin.f64 y))
(neg.f64 z)
z
(sin.f64 y)
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
(-.f64 x (*.f64 z y))
(*.f64 z y)
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x)
(-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y) z)
(*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y)
(fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x))
#s(literal 1/6 binary64)
(*.f64 #s(literal -1/2 binary64) x)
#s(literal -1/2 binary64)
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) (*.f64 z (sin.f64 y)))
(*.f64 x #s(approx (cos y) #s(literal 1 binary64)))
#s(approx (cos y) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 z (sin.f64 y))
(-.f64 (*.f64 x #s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 z (sin.f64 y)))
(*.f64 x #s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 y y)
Outputs
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (* -1 (* z (sin y)))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (+ (* -1 (* z (sin y))) (* x (cos y)))))
#s(approx x #s(hole binary64 x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (- (* x (cos y)) (* z (sin y)))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* y z))))
#s(approx (- x (* z y)) #s(hole binary64 (- x (* y z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* y (- (* 1/6 (* (pow y 2) z)) z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ (* x (+ 1 (* -1/2 (pow y 2)))) (* y (- (* 1/6 (* (pow y 2) z)) z)))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (- (* 1/6 (* (pow y 2) z)) z)))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (- (+ (* -1/2 (* x y)) (* 1/6 (* (pow y 2) z))) z)))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) #s(hole binary64 (* 1/6 (* (pow y 2) z))))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) #s(hole binary64 (+ (* -1/2 (* x y)) (* 1/6 (* (pow y 2) z)))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (* 1/6 (* y z))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (+ (* -1/2 x) (* 1/6 (* y z)))))
#s(approx (* -1/2 x) #s(hole binary64 (* -1/2 x)))
#s(approx (* x (cos y)) #s(hole binary64 (* x (cos y))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (* x (+ (cos y) (* -1 (/ (* z (sin y)) x))))))
#s(approx (- x (* z y)) #s(hole binary64 (* x (+ 1 (* -1 (/ (* y z) x))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* x (+ 1 (* -1/2 (pow y 2))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* x (+ 1 (+ (* -1/2 (pow y 2)) (/ (* y (- (* 1/6 (* (pow y 2) z)) z)) x))))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* -1/2 (* x y))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* x (- (+ (* -1/2 y) (* 1/6 (/ (* (pow y 2) z) x))) (/ z x)))))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) #s(hole binary64 (* x (+ (* -1/2 y) (* 1/6 (/ (* (pow y 2) z) x))))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (* x (- (* 1/6 (/ (* y z) x)) 1/2))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (* -1 (* x (+ (* -1 (cos y)) (/ (* z (sin y)) x))))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* x (- (/ (* y z) x) 1)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* x (- (* 1/2 (pow y 2)) 1)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (* y (- (* 1/6 (* (pow y 2) z)) z)) x)) (* 1/2 (pow y 2))) 1)))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* -1 (* x (+ (* -1 (/ (- (* 1/6 (* (pow y 2) z)) z) x)) (* 1/2 y))))))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) #s(hole binary64 (* -1 (* x (+ (* -1/6 (/ (* (pow y 2) z) x)) (* 1/2 y))))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (* -1 (* x (+ 1/2 (* -1/6 (/ (* y z) x)))))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (+ x (* -1 (* y z)))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (+ x (* y (+ (* -1 z) (* -1/2 (* x y)))))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (+ x (* y (+ (* -1 z) (* y (+ (* -1/2 x) (* 1/6 (* y z)))))))))
#s(approx (cos y) #s(hole binary64 1))
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2)))))
#s(approx y #s(hole binary64 y))
#s(approx (* (neg z) (sin y)) #s(hole binary64 (* y (+ (* -1 z) (* 1/6 (* (pow y 2) z))))))
#s(approx (* (neg z) (sin y)) #s(hole binary64 (* y (+ (* -1 z) (* (pow y 2) (+ (* -1/120 (* (pow y 2) z)) (* 1/6 z)))))))
#s(approx (* (neg z) (sin y)) #s(hole binary64 (* y (+ (* -1 z) (* (pow y 2) (+ (* 1/6 z) (* (pow y 2) (+ (* -1/120 z) (* 1/5040 (* (pow y 2) z))))))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* -1/2 (* x y)) z)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/2 x) (* 1/6 (* y z)))) z)))))
#s(approx (* z y) #s(hole binary64 (* y z)))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* -1 z)))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (- (* -1/2 (* x y)) z)))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (- (* y (+ (* -1/2 x) (* 1/6 (* y z)))) z)))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) #s(hole binary64 (* y (+ (* -1/2 x) (* 1/6 (* y z))))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* -1/2 (* x (pow y 2))))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* 1/24 (* x (pow y 2))))))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* (pow y 2) (+ (* -1/720 (* x (pow y 2))) (* 1/24 x))))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* -1/6 (* (pow y 2) z))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* 1/120 (* (pow y 2) z))))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* (pow y 2) (+ (* -1/5040 (* (pow y 2) z)) (* 1/120 z)))))))))
#s(approx (* y y) #s(hole binary64 (pow y 2)))
#s(approx (cos y) #s(hole binary64 (cos y)))
#s(approx (sin y) #s(hole binary64 (sin y)))
#s(approx (- x (* z y)) #s(hole binary64 (* y (- (/ x y) z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* 1/6 (* (pow y 3) z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (+ (* -1/2 (/ x y)) (* 1/6 z)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (+ (* -1 (/ z (pow y 2))) (+ (* -1/2 (/ x y)) (* 1/6 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (- (+ (* -1/2 (/ x y)) (+ (* 1/6 z) (/ x (pow y 3)))) (/ z (pow y 2))))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* (pow y 2) (+ (* -1/2 (/ x y)) (* 1/6 z)))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ z (pow y 2))) (+ (* -1/2 (/ x y)) (* 1/6 z))))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (* y (+ (* -1/2 (/ x y)) (* 1/6 z)))))
#s(approx (* z (sin y)) #s(hole binary64 (* z (sin y))))
#s(approx (+ (* (* y y) -1/2) 1) #s(hole binary64 (* -1/2 (pow y 2))))
#s(approx (+ (* (* y y) -1/2) 1) #s(hole binary64 (* (pow y 2) (- (/ 1 (pow y 2)) 1/2))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) (* -1 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1/6 z) (* 1/2 (/ x y)))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1 (/ (+ (* -1 (/ z y)) (* -1/2 x)) y)) (* -1/6 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1 (/ (+ (* -1 (/ (+ z (* -1 (/ x y))) y)) (* -1/2 x)) y)) (* -1/6 z))))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ (+ (* 1/2 x) (/ z y)) y)) (* 1/6 z)))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (* -1 (* y (+ (* -1/6 z) (* 1/2 (/ x y)))))))
#s(approx z #s(hole binary64 z))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ x (+ (* -1/2 (* x (pow y 2))) (* y (* z (- (* 1/6 (pow y 2)) 1)))))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (+ (* -1/2 (* x y)) (* z (- (* 1/6 (pow y 2)) 1)))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (* z (+ (* -1 (sin y)) (/ (* x (cos y)) z)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* z (- (/ (* x (cos y)) z) (sin y)))))
#s(approx (- x (* z y)) #s(hole binary64 (* z (- (/ x z) y))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* y (* z (- (* 1/6 (pow y 2)) 1)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* z (+ (* -1/2 (/ (* x (pow y 2)) z)) (+ (* y (- (* 1/6 (pow y 2)) 1)) (/ x z))))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* z (- (* 1/6 (pow y 2)) 1))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* z (- (+ (* -1/2 (/ (* x y) z)) (* 1/6 (pow y 2))) 1))))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) #s(hole binary64 (* z (+ (* -1/2 (/ (* x y) z)) (* 1/6 (pow y 2))))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (* z (+ (* -1/2 (/ x z)) (* 1/6 y)))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (* -1 (* z (+ (sin y) (* -1 (/ (* x (cos y)) z)))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* -1 (* z (- (* -1 (/ (* x (cos y)) z)) (* -1 (sin y)))))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* z (- (* -1 (/ x z)) (* -1 y))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* y (* z (+ 1 (* -1/6 (pow y 2))))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* z (+ (* -1 (/ (+ x (* -1/2 (* x (pow y 2)))) z)) (* y (+ 1 (* -1/6 (pow y 2)))))))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* -1 (* z (+ 1 (* -1/6 (pow y 2)))))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* -1 (* z (+ 1 (+ (* -1/6 (pow y 2)) (* 1/2 (/ (* x y) z))))))))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) #s(hole binary64 (* -1 (* z (+ (* -1/6 (pow y 2)) (* 1/2 (/ (* x y) z)))))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (* -1 (* z (+ (* -1/6 y) (* 1/2 (/ x z)))))))
Calls

9 calls:

TimeVariablePointExpression
11.0ms
y
@-inf
((+ (* (cos y) x) (* (neg z) (sin y))) (cos y) y x (* (neg z) (sin y)) (neg z) z (sin y) (- (* x (cos y)) (* z (sin y))) (- x (* z y)) (* z y) (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) (+ (* 1/6 (* z y)) (* -1/2 x)) 1/6 (* -1/2 x) -1/2 (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) 1 (* z (sin y)) (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) (+ (* (* y y) -1/2) 1) (* y y))
6.0ms
x
@0
((+ (* (cos y) x) (* (neg z) (sin y))) (cos y) y x (* (neg z) (sin y)) (neg z) z (sin y) (- (* x (cos y)) (* z (sin y))) (- x (* z y)) (* z y) (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) (+ (* 1/6 (* z y)) (* -1/2 x)) 1/6 (* -1/2 x) -1/2 (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) 1 (* z (sin y)) (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) (+ (* (* y y) -1/2) 1) (* y y))
4.0ms
z
@0
((+ (* (cos y) x) (* (neg z) (sin y))) (cos y) y x (* (neg z) (sin y)) (neg z) z (sin y) (- (* x (cos y)) (* z (sin y))) (- x (* z y)) (* z y) (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) (+ (* 1/6 (* z y)) (* -1/2 x)) 1/6 (* -1/2 x) -1/2 (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) 1 (* z (sin y)) (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) (+ (* (* y y) -1/2) 1) (* y y))
3.0ms
y
@inf
((+ (* (cos y) x) (* (neg z) (sin y))) (cos y) y x (* (neg z) (sin y)) (neg z) z (sin y) (- (* x (cos y)) (* z (sin y))) (- x (* z y)) (* z y) (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) (+ (* 1/6 (* z y)) (* -1/2 x)) 1/6 (* -1/2 x) -1/2 (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) 1 (* z (sin y)) (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) (+ (* (* y y) -1/2) 1) (* y y))
3.0ms
z
@-inf
((+ (* (cos y) x) (* (neg z) (sin y))) (cos y) y x (* (neg z) (sin y)) (neg z) z (sin y) (- (* x (cos y)) (* z (sin y))) (- x (* z y)) (* z y) (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) (+ (* 1/6 (* z y)) (* -1/2 x)) 1/6 (* -1/2 x) -1/2 (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) 1 (* z (sin y)) (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) (+ (* (* y y) -1/2) 1) (* y y))

rewrite228.0ms (6.3%)

Memory
35.4MiB live, 348.6MiB allocated; 46ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04412416
04702341
128392341
081212262
1271302262
Stop Event
saturated
node-limit
iter-limit
Counts
128 → 233
Calls
Call 1
Inputs
(fma.f64 (cos.f64 y) x (*.f64 (neg.f64 z) (sin.f64 y)))
(cos.f64 y)
y
x
(*.f64 (neg.f64 z) (sin.f64 y))
(neg.f64 z)
z
(sin.f64 y)
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
(-.f64 x (*.f64 z y))
(*.f64 z y)
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x)
(-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y) z)
(*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y)
(fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x))
#s(literal 1/6 binary64)
(*.f64 #s(literal -1/2 binary64) x)
#s(literal -1/2 binary64)
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) (*.f64 z (sin.f64 y)))
(*.f64 x #s(approx (cos y) #s(literal 1 binary64)))
#s(approx (cos y) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 z (sin.f64 y))
(-.f64 (*.f64 x #s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 z (sin.f64 y)))
(*.f64 x #s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 y y)
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (* -1 (* z (sin y)))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (+ (* -1 (* z (sin y))) (* x (cos y)))))
#s(approx x #s(hole binary64 x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (- (* x (cos y)) (* z (sin y)))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* y z))))
#s(approx (- x (* z y)) #s(hole binary64 (- x (* y z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* y (- (* 1/6 (* (pow y 2) z)) z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ (* x (+ 1 (* -1/2 (pow y 2)))) (* y (- (* 1/6 (* (pow y 2) z)) z)))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (- (* 1/6 (* (pow y 2) z)) z)))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (- (+ (* -1/2 (* x y)) (* 1/6 (* (pow y 2) z))) z)))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) #s(hole binary64 (* 1/6 (* (pow y 2) z))))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) #s(hole binary64 (+ (* -1/2 (* x y)) (* 1/6 (* (pow y 2) z)))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (* 1/6 (* y z))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (+ (* -1/2 x) (* 1/6 (* y z)))))
#s(approx (* -1/2 x) #s(hole binary64 (* -1/2 x)))
#s(approx (* x (cos y)) #s(hole binary64 (* x (cos y))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (* x (+ (cos y) (* -1 (/ (* z (sin y)) x))))))
#s(approx (- x (* z y)) #s(hole binary64 (* x (+ 1 (* -1 (/ (* y z) x))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* x (+ 1 (* -1/2 (pow y 2))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* x (+ 1 (+ (* -1/2 (pow y 2)) (/ (* y (- (* 1/6 (* (pow y 2) z)) z)) x))))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* -1/2 (* x y))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* x (- (+ (* -1/2 y) (* 1/6 (/ (* (pow y 2) z) x))) (/ z x)))))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) #s(hole binary64 (* x (+ (* -1/2 y) (* 1/6 (/ (* (pow y 2) z) x))))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (* x (- (* 1/6 (/ (* y z) x)) 1/2))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (* -1 (* x (+ (* -1 (cos y)) (/ (* z (sin y)) x))))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* x (- (/ (* y z) x) 1)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* x (- (* 1/2 (pow y 2)) 1)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (* y (- (* 1/6 (* (pow y 2) z)) z)) x)) (* 1/2 (pow y 2))) 1)))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* -1 (* x (+ (* -1 (/ (- (* 1/6 (* (pow y 2) z)) z) x)) (* 1/2 y))))))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) #s(hole binary64 (* -1 (* x (+ (* -1/6 (/ (* (pow y 2) z) x)) (* 1/2 y))))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (* -1 (* x (+ 1/2 (* -1/6 (/ (* y z) x)))))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (+ x (* -1 (* y z)))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (+ x (* y (+ (* -1 z) (* -1/2 (* x y)))))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (+ x (* y (+ (* -1 z) (* y (+ (* -1/2 x) (* 1/6 (* y z)))))))))
#s(approx (cos y) #s(hole binary64 1))
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2)))))
#s(approx y #s(hole binary64 y))
#s(approx (* (neg z) (sin y)) #s(hole binary64 (* y (+ (* -1 z) (* 1/6 (* (pow y 2) z))))))
#s(approx (* (neg z) (sin y)) #s(hole binary64 (* y (+ (* -1 z) (* (pow y 2) (+ (* -1/120 (* (pow y 2) z)) (* 1/6 z)))))))
#s(approx (* (neg z) (sin y)) #s(hole binary64 (* y (+ (* -1 z) (* (pow y 2) (+ (* 1/6 z) (* (pow y 2) (+ (* -1/120 z) (* 1/5040 (* (pow y 2) z))))))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* -1/2 (* x y)) z)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/2 x) (* 1/6 (* y z)))) z)))))
#s(approx (* z y) #s(hole binary64 (* y z)))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* -1 z)))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (- (* -1/2 (* x y)) z)))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (- (* y (+ (* -1/2 x) (* 1/6 (* y z)))) z)))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) #s(hole binary64 (* y (+ (* -1/2 x) (* 1/6 (* y z))))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* -1/2 (* x (pow y 2))))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* 1/24 (* x (pow y 2))))))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* (pow y 2) (+ (* -1/720 (* x (pow y 2))) (* 1/24 x))))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* -1/6 (* (pow y 2) z))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* 1/120 (* (pow y 2) z))))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* (pow y 2) (+ (* -1/5040 (* (pow y 2) z)) (* 1/120 z)))))))))
#s(approx (* y y) #s(hole binary64 (pow y 2)))
#s(approx (cos y) #s(hole binary64 (cos y)))
#s(approx (sin y) #s(hole binary64 (sin y)))
#s(approx (- x (* z y)) #s(hole binary64 (* y (- (/ x y) z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* 1/6 (* (pow y 3) z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (+ (* -1/2 (/ x y)) (* 1/6 z)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (+ (* -1 (/ z (pow y 2))) (+ (* -1/2 (/ x y)) (* 1/6 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (- (+ (* -1/2 (/ x y)) (+ (* 1/6 z) (/ x (pow y 3)))) (/ z (pow y 2))))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* (pow y 2) (+ (* -1/2 (/ x y)) (* 1/6 z)))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ z (pow y 2))) (+ (* -1/2 (/ x y)) (* 1/6 z))))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (* y (+ (* -1/2 (/ x y)) (* 1/6 z)))))
#s(approx (* z (sin y)) #s(hole binary64 (* z (sin y))))
#s(approx (+ (* (* y y) -1/2) 1) #s(hole binary64 (* -1/2 (pow y 2))))
#s(approx (+ (* (* y y) -1/2) 1) #s(hole binary64 (* (pow y 2) (- (/ 1 (pow y 2)) 1/2))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) (* -1 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1/6 z) (* 1/2 (/ x y)))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1 (/ (+ (* -1 (/ z y)) (* -1/2 x)) y)) (* -1/6 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1 (/ (+ (* -1 (/ (+ z (* -1 (/ x y))) y)) (* -1/2 x)) y)) (* -1/6 z))))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ (+ (* 1/2 x) (/ z y)) y)) (* 1/6 z)))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (* -1 (* y (+ (* -1/6 z) (* 1/2 (/ x y)))))))
#s(approx z #s(hole binary64 z))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ x (+ (* -1/2 (* x (pow y 2))) (* y (* z (- (* 1/6 (pow y 2)) 1)))))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (+ (* -1/2 (* x y)) (* z (- (* 1/6 (pow y 2)) 1)))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (* z (+ (* -1 (sin y)) (/ (* x (cos y)) z)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* z (- (/ (* x (cos y)) z) (sin y)))))
#s(approx (- x (* z y)) #s(hole binary64 (* z (- (/ x z) y))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* y (* z (- (* 1/6 (pow y 2)) 1)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* z (+ (* -1/2 (/ (* x (pow y 2)) z)) (+ (* y (- (* 1/6 (pow y 2)) 1)) (/ x z))))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* z (- (* 1/6 (pow y 2)) 1))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* z (- (+ (* -1/2 (/ (* x y) z)) (* 1/6 (pow y 2))) 1))))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) #s(hole binary64 (* z (+ (* -1/2 (/ (* x y) z)) (* 1/6 (pow y 2))))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (* z (+ (* -1/2 (/ x z)) (* 1/6 y)))))
#s(approx (+ (* (cos y) x) (* (neg z) (sin y))) #s(hole binary64 (* -1 (* z (+ (sin y) (* -1 (/ (* x (cos y)) z)))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* -1 (* z (- (* -1 (/ (* x (cos y)) z)) (* -1 (sin y)))))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* z (- (* -1 (/ x z)) (* -1 y))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* y (* z (+ 1 (* -1/6 (pow y 2))))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* z (+ (* -1 (/ (+ x (* -1/2 (* x (pow y 2)))) z)) (* y (+ 1 (* -1/6 (pow y 2)))))))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* -1 (* z (+ 1 (* -1/6 (pow y 2)))))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) #s(hole binary64 (* -1 (* z (+ 1 (+ (* -1/6 (pow y 2)) (* 1/2 (/ (* x y) z))))))))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) #s(hole binary64 (* -1 (* z (+ (* -1/6 (pow y 2)) (* 1/2 (/ (* x y) z)))))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) #s(hole binary64 (* -1 (* z (+ (* -1/6 y) (* 1/2 (/ x z)))))))
Outputs
(neg.f64 (-.f64 (*.f64 (sin.f64 y) z) (*.f64 (cos.f64 y) x)))
(fma.f64 (neg.f64 z) (sin.f64 y) (*.f64 (cos.f64 y) x))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 y) z) (*.f64 (cos.f64 y) x))
(fma.f64 (*.f64 (sin.f64 y) z) #s(literal -1 binary64) (*.f64 (cos.f64 y) x))
(fma.f64 (sin.f64 y) (neg.f64 z) (*.f64 (cos.f64 y) x))
(fma.f64 (cos.f64 y) x (*.f64 (neg.f64 z) (sin.f64 y)))
(fma.f64 x (cos.f64 y) (*.f64 (neg.f64 z) (sin.f64 y)))
(-.f64 (*.f64 (neg.f64 z) (sin.f64 y)) (*.f64 (neg.f64 x) (cos.f64 y)))
(-.f64 (*.f64 (neg.f64 z) (sin.f64 y)) (neg.f64 (*.f64 (cos.f64 y) x)))
(-.f64 (*.f64 (cos.f64 y) x) (*.f64 (neg.f64 (neg.f64 z)) (sin.f64 y)))
(-.f64 (*.f64 (cos.f64 y) x) (neg.f64 (*.f64 (neg.f64 z) (sin.f64 y))))
(-.f64 (*.f64 (cos.f64 y) x) (*.f64 (sin.f64 y) z))
(+.f64 (*.f64 (neg.f64 z) (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 (neg.f64 z) (sin.f64 y)))
(sin.f64 (+.f64 (neg.f64 y) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (fabs.f64 y) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 y (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (sin.f64 y) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (fabs.f64 y)))
(cos.f64 (fabs.f64 (fabs.f64 y)))
(cos.f64 (neg.f64 (neg.f64 y)))
(cos.f64 (neg.f64 y))
(cos.f64 (fabs.f64 y))
(cos.f64 y)
(+.f64 (*.f64 (sin.f64 y) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 y) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
y
x
(*.f64 (neg.f64 z) (sin.f64 y))
(*.f64 #s(literal -1 binary64) (*.f64 (sin.f64 y) z))
(*.f64 (*.f64 (sin.f64 y) z) #s(literal -1 binary64))
(*.f64 (sin.f64 y) (neg.f64 z))
(neg.f64 (*.f64 (sin.f64 y) z))
(*.f64 #s(literal -1 binary64) z)
(*.f64 z #s(literal -1 binary64))
(neg.f64 z)
z
(sin.f64 y)
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
(neg.f64 (-.f64 (*.f64 z y) x))
(fma.f64 (neg.f64 y) z x)
(fma.f64 (*.f64 z y) #s(literal -1 binary64) x)
(fma.f64 #s(literal -1 binary64) (*.f64 z y) x)
(-.f64 x (*.f64 #s(literal 1 binary64) (*.f64 z y)))
(-.f64 x (neg.f64 (*.f64 (neg.f64 y) z)))
(-.f64 x (*.f64 z y))
(+.f64 (*.f64 (neg.f64 y) z) x)
(+.f64 x (*.f64 (neg.f64 z) y))
(+.f64 x (*.f64 (neg.f64 y) z))
(*.f64 z y)
(*.f64 y z)
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
(fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x)
(fma.f64 y (-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z) x)
(-.f64 (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z) y) (neg.f64 x))
(-.f64 x (*.f64 (neg.f64 y) (-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z)))
(-.f64 x (neg.f64 (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z) y)))
(+.f64 (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z) y) x)
(+.f64 x (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z) y))
(neg.f64 (-.f64 z (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y)))
(fma.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y (neg.f64 z))
(fma.f64 #s(literal -1 binary64) z (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y))
(fma.f64 z #s(literal -1 binary64) (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y))
(fma.f64 y (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) (neg.f64 z))
(-.f64 (neg.f64 z) (*.f64 (neg.f64 y) (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x))))
(-.f64 (neg.f64 z) (neg.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y)))
(-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z)
(+.f64 (neg.f64 z) (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y))
(+.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) (neg.f64 z))
(*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y)
(*.f64 y (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)))
(fma.f64 (*.f64 x y) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 z y) #s(literal 1/6 binary64)) y))
(fma.f64 (*.f64 #s(literal -1/2 binary64) x) y (*.f64 (*.f64 (*.f64 z y) #s(literal 1/6 binary64)) y))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x y) (*.f64 (*.f64 (*.f64 z y) #s(literal 1/6 binary64)) y))
(fma.f64 y (*.f64 #s(literal -1/2 binary64) x) (*.f64 y (*.f64 (*.f64 z y) #s(literal 1/6 binary64))))
(+.f64 (*.f64 y (*.f64 #s(literal -1/2 binary64) x)) (*.f64 y (*.f64 (*.f64 z y) #s(literal 1/6 binary64))))
(+.f64 (*.f64 (*.f64 x y) #s(literal -1/2 binary64)) (*.f64 (*.f64 (*.f64 z y) #s(literal 1/6 binary64)) y))
(fma.f64 (*.f64 #s(literal 1/6 binary64) y) z (*.f64 #s(literal -1/2 binary64) x))
(fma.f64 (*.f64 #s(literal 1/6 binary64) z) y (*.f64 #s(literal -1/2 binary64) x))
(fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x))
(fma.f64 #s(literal -1/2 binary64) x (*.f64 (*.f64 z y) #s(literal 1/6 binary64)))
(fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x))
(fma.f64 x #s(literal -1/2 binary64) (*.f64 (*.f64 z y) #s(literal 1/6 binary64)))
(-.f64 (*.f64 (*.f64 z y) #s(literal 1/6 binary64)) (neg.f64 (*.f64 #s(literal -1/2 binary64) x)))
(-.f64 (*.f64 (*.f64 z y) #s(literal 1/6 binary64)) (*.f64 #s(literal 1/2 binary64) x))
(-.f64 (*.f64 #s(literal -1/2 binary64) x) (*.f64 #s(literal -1/6 binary64) (*.f64 z y)))
(-.f64 (*.f64 #s(literal -1/2 binary64) x) (neg.f64 (*.f64 (*.f64 z y) #s(literal 1/6 binary64))))
(+.f64 (*.f64 (*.f64 z y) #s(literal 1/6 binary64)) (*.f64 #s(literal -1/2 binary64) x))
(+.f64 (*.f64 #s(literal -1/2 binary64) x) (*.f64 (*.f64 z y) #s(literal 1/6 binary64)))
#s(literal 1/6 binary64)
(*.f64 #s(literal -1/2 binary64) x)
(*.f64 x #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
(neg.f64 (-.f64 (*.f64 (sin.f64 y) z) (*.f64 #s(approx (cos y) #s(literal 1 binary64)) x)))
(fma.f64 #s(approx (cos y) #s(literal 1 binary64)) x (*.f64 (neg.f64 z) (sin.f64 y)))
(fma.f64 x #s(approx (cos y) #s(literal 1 binary64)) (*.f64 (neg.f64 z) (sin.f64 y)))
(-.f64 (*.f64 #s(approx (cos y) #s(literal 1 binary64)) x) (*.f64 (sin.f64 y) z))
(+.f64 (*.f64 #s(approx (cos y) #s(literal 1 binary64)) x) (*.f64 (neg.f64 z) (sin.f64 y)))
(*.f64 #s(approx (cos y) #s(literal 1 binary64)) x)
(*.f64 x #s(approx (cos y) #s(literal 1 binary64)))
#s(approx (cos y) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 (sin.f64 y) z)
(*.f64 z (sin.f64 y))
(neg.f64 (-.f64 (*.f64 (sin.f64 y) z) (*.f64 #s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))) x)))
(fma.f64 #s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))) x (*.f64 (neg.f64 z) (sin.f64 y)))
(fma.f64 x #s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))) (*.f64 (neg.f64 z) (sin.f64 y)))
(-.f64 (*.f64 #s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))) x) (*.f64 (sin.f64 y) z))
(+.f64 (*.f64 #s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))) x) (*.f64 (neg.f64 z) (sin.f64 y)))
(*.f64 #s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))) x)
(*.f64 x #s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 y y) #s(literal 1 binary64))
(fma.f64 y (*.f64 #s(literal -1/2 binary64) y) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 y y) #s(literal -1/2 binary64)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 y y) #s(literal -1/2 binary64))))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 y y)))
(+.f64 (*.f64 (*.f64 y y) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 y y) #s(literal -1/2 binary64)))
(*.f64 (neg.f64 (fabs.f64 y)) (neg.f64 (fabs.f64 y)))
(*.f64 (fabs.f64 (fabs.f64 y)) (fabs.f64 (fabs.f64 y)))
(*.f64 (neg.f64 (neg.f64 y)) (neg.f64 (neg.f64 y)))
(*.f64 (neg.f64 y) (neg.f64 y))
(*.f64 (fabs.f64 y) (fabs.f64 y))
(*.f64 y y)
(pow.f64 (neg.f64 (fabs.f64 y)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (fabs.f64 y)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 y)) #s(literal 2 binary64))
(pow.f64 (neg.f64 y) #s(literal 2 binary64))
(pow.f64 (fabs.f64 y) #s(literal 2 binary64))
(pow.f64 y #s(literal 2 binary64))
(sqrt.f64 (*.f64 (*.f64 y y) (*.f64 y y)))
(fabs.f64 (neg.f64 (*.f64 y y)))
(fabs.f64 (*.f64 y y))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 (*.f64 (cos.f64 y) x) (*.f64 (sin.f64 y) z)))
#s(approx x x)
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 (*.f64 (cos.f64 y) x) (*.f64 (sin.f64 y) z)))
#s(approx (- x (* z y)) (*.f64 (neg.f64 y) z))
#s(approx (- x (* z y)) (-.f64 x (*.f64 z y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y)))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (fma.f64 (*.f64 x y) #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z)))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) (fma.f64 (*.f64 x y) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (*.f64 (*.f64 z y) #s(literal 1/6 binary64)))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)))
#s(approx (* -1/2 x) (*.f64 #s(literal -1/2 binary64) x))
#s(approx (* x (cos y)) (*.f64 (cos.f64 y) x))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (+.f64 (/.f64 (*.f64 (neg.f64 z) (sin.f64 y)) x) (cos.f64 y)) x))
#s(approx (- x (* z y)) (*.f64 (+.f64 (/.f64 (*.f64 (neg.f64 y) z) x) #s(literal 1 binary64)) x))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (+.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) (/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y) x)) #s(literal 1 binary64)) x))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (*.f64 x y) #s(literal -1/2 binary64)))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (fma.f64 #s(literal -1/2 binary64) y (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) x)) x))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) (*.f64 (fma.f64 (/.f64 (*.f64 (*.f64 y y) z) x) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) y)) x))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (*.f64 (fma.f64 (/.f64 (*.f64 z y) x) #s(literal 1/6 binary64) #s(literal -1/2 binary64)) x))
#s(approx (- (* x (cos y)) (* z (sin y))) (neg.f64 (*.f64 (fma.f64 z (/.f64 (sin.f64 y) x) (neg.f64 (cos.f64 y))) x)))
#s(approx (- x (* z y)) (neg.f64 (*.f64 (fma.f64 y (/.f64 z x) #s(literal -1 binary64)) x)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (neg.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) x)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (neg.f64 (*.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) (neg.f64 (/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y) x))) #s(literal 1 binary64)) x)))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (neg.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) y (neg.f64 (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) x))) x)))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) (neg.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (/.f64 (*.f64 (*.f64 y y) z) x) (*.f64 #s(literal 1/2 binary64) y)) x)))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (neg.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (/.f64 (*.f64 z y) x) #s(literal 1/2 binary64)) x)))
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (*.f64 x y) #s(literal -1/2 binary64)) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
#s(approx (cos y) #s(literal 1 binary64))
#s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos y) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 y y) #s(literal -1/2 binary64)) (*.f64 y y) #s(literal 1 binary64)))
#s(approx (cos y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 y y) #s(literal 1/24 binary64)) (*.f64 y y) #s(literal -1/2 binary64)) (*.f64 y y) #s(literal 1 binary64)))
#s(approx y y)
#s(approx (* (neg z) (sin y)) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y))
#s(approx (* (neg z) (sin y)) (*.f64 (fma.f64 (*.f64 y y) (fma.f64 #s(literal -1/120 binary64) (*.f64 (*.f64 y y) z) (*.f64 #s(literal 1/6 binary64) z)) (neg.f64 z)) y))
#s(approx (* (neg z) (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 y y) (fma.f64 #s(literal 1/5040 binary64) (*.f64 (*.f64 y y) z) (*.f64 #s(literal -1/120 binary64) z)) (*.f64 #s(literal 1/6 binary64) z)) (*.f64 y y) (neg.f64 z)) y))
#s(approx (sin y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y))
#s(approx (sin y) (*.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y))
#s(approx (sin y) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (*.f64 x y) #s(literal -1/2 binary64)) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
#s(approx (* z y) (*.f64 z y))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (neg.f64 z))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (-.f64 (*.f64 (*.f64 x y) #s(literal -1/2 binary64)) z))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y))
#s(approx (* x (cos y)) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/2 binary64) x))
#s(approx (* x (cos y)) (fma.f64 (fma.f64 (*.f64 (*.f64 y y) x) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) x)) (*.f64 y y) x))
#s(approx (* x (cos y)) (fma.f64 (fma.f64 (*.f64 y y) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) x)) (*.f64 #s(literal -1/2 binary64) x)) (*.f64 y y) x))
#s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 y y)) z z) y))
#s(approx (* z (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y))
#s(approx (* z (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 y y) (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) z (*.f64 #s(literal 1/120 binary64) z)) (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y))
#s(approx (* y y) (*.f64 y y))
#s(approx (cos y) (cos.f64 y))
#s(approx (sin y) (sin.f64 y))
#s(approx (- x (* z y)) (*.f64 (-.f64 (/.f64 x y) z) y))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z)) (*.f64 (*.f64 y y) y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (+.f64 (/.f64 (neg.f64 z) (*.f64 y y)) (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z))) (*.f64 (*.f64 y y) y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (fma.f64 #s(literal 1/6 binary64) z (/.f64 x (*.f64 (*.f64 y y) y)))) (/.f64 z (*.f64 y y))) (*.f64 (*.f64 y y) y)))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z)) (*.f64 y y)))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (+.f64 (/.f64 (neg.f64 z) (*.f64 y y)) (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z))) (*.f64 y y)))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (*.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z)) y))
#s(approx (* z (sin y)) (*.f64 (sin.f64 y) z))
#s(approx (+ (* (* y y) -1/2) 1) (*.f64 (*.f64 y y) #s(literal -1/2 binary64)))
#s(approx (+ (* (* y y) -1/2) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/2 binary64)) (*.f64 y y)))
#s(approx (- x (* z y)) (*.f64 (neg.f64 y) (-.f64 (neg.f64 (/.f64 x y)) (neg.f64 z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (neg.f64 y) (*.f64 y y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (neg.f64 y) (*.f64 y y)) (fma.f64 #s(literal -1/6 binary64) z (neg.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) x (/.f64 (neg.f64 z) y)) y)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (neg.f64 y) (*.f64 y y)) (fma.f64 #s(literal -1/6 binary64) z (neg.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) x (neg.f64 (/.f64 (+.f64 (neg.f64 (/.f64 x y)) z) y))) y)))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (*.f64 y y) (fma.f64 #s(literal 1/6 binary64) z (neg.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) x (/.f64 z y)) y)))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (*.f64 (neg.f64 y) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) z))))
#s(approx z z)
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (+.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z) y (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/2 binary64))) x))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (fma.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z (*.f64 (*.f64 x y) #s(literal -1/2 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (-.f64 (/.f64 (*.f64 (cos.f64 y) x) z) (sin.f64 y)) z))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (-.f64 (/.f64 (*.f64 (cos.f64 y) x) z) (sin.f64 y)) z))
#s(approx (- x (* z y)) (*.f64 (-.f64 (/.f64 x z) y) z))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z) y))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (/.f64 (*.f64 (*.f64 y y) x) z) #s(literal -1/2 binary64) (fma.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) y (/.f64 x z))) z))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (fma.f64 (/.f64 (*.f64 x y) z) #s(literal -1/2 binary64) (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64))) z))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) (*.f64 (fma.f64 (/.f64 (*.f64 x y) z) #s(literal -1/2 binary64) (*.f64 (*.f64 y y) #s(literal 1/6 binary64))) z))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (*.f64 (fma.f64 (/.f64 x z) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) y)) z))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (neg.f64 z) (+.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 y) x) z)) (sin.f64 y))))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (neg.f64 z) (neg.f64 (-.f64 (/.f64 (*.f64 (cos.f64 y) x) z) (sin.f64 y)))))
#s(approx (- x (* z y)) (*.f64 (neg.f64 z) (-.f64 (neg.f64 (/.f64 x z)) (neg.f64 y))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (neg.f64 y) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) z)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (neg.f64 z) (fma.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)) y (neg.f64 (/.f64 (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/2 binary64) x) z)))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (neg.f64 z) (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64))))
#s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (neg.f64 z) (+.f64 (fma.f64 (/.f64 (*.f64 x y) z) #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 y y))) #s(literal 1 binary64))))
#s(approx (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) (*.f64 (neg.f64 z) (fma.f64 (/.f64 (*.f64 x y) z) #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 y y)))))
#s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (*.f64 (neg.f64 z) (fma.f64 (/.f64 x z) #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) y))))

eval32.0ms (0.9%)

Memory
-13.7MiB live, 93.5MiB allocated; 10ms collecting garbage
Compiler

Compiled 2 055 to 923 computations (55.1% saved)

prune21.0ms (0.6%)

Memory
-28.1MiB live, 64.4MiB allocated; 6ms collecting garbage
Pruning

24 alts after pruning (20 fresh and 4 done)

PrunedKeptTotal
New21313226
Fresh077
Picked235
Done011
Total21524239
Accuracy
99.8%
Counts
239 → 24
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.8%
(fma.f64 (sin.f64 y) (neg.f64 z) (*.f64 (cos.f64 y) x))
99.8%
(fma.f64 (cos.f64 y) x (*.f64 (neg.f64 z) (sin.f64 y)))
99.6%
(-.f64 (*.f64 x (fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) (*.f64 z (sin.f64 y)))
99.8%
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
60.0%
(-.f64 (*.f64 x (cos.f64 y)) #s(approx (* z (sin y)) (*.f64 z y)))
75.0%
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) (*.f64 z (sin.f64 y)))
45.5%
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y)))
49.1%
(-.f64 #s(approx (* x (cos y)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 y y) x) (*.f64 #s(literal -1/2 binary64) x)) y) y x)) (*.f64 z (sin.f64 y)))
45.7%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) z) y x))
46.1%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 #s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (*.f64 (*.f64 z y) #s(literal 1/6 binary64))) y) z) y x))
46.5%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (neg.f64 y) z x))
46.1%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z)) y x))
34.6%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (*.f64 x y) #s(literal -1/2 binary64))) y x))
46.5%
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
85.4%
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (-.f64 (/.f64 (*.f64 (cos.f64 y) x) z) (sin.f64 y)) z))
41.7%
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
92.7%
#s(approx (- (* x (cos y)) (* z (sin y))) (neg.f64 (*.f64 (fma.f64 z (/.f64 (sin.f64 y) x) (neg.f64 (cos.f64 y))) x)))
14.0%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (*.f64 (neg.f64 y) z)))
42.3%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (neg.f64 (*.f64 (fma.f64 y (/.f64 z x) #s(literal -1 binary64)) x))))
2.6%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z)) (*.f64 (*.f64 y y) y))))
34.6%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x)))
14.0%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y)))
14.0%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z) y)))
2.9%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64))))
Compiler

Compiled 777 to 769 computations (1% saved)

series48.0ms (1.3%)

Memory
14.7MiB live, 125.8MiB allocated; 23ms collecting garbage
Counts
37 → 96
Calls
Call 1
Inputs
(fma.f64 (sin.f64 y) (neg.f64 z) (*.f64 (cos.f64 y) x))
(sin.f64 y)
y
(neg.f64 z)
z
(*.f64 (cos.f64 y) x)
(cos.f64 y)
x
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (*.f64 (neg.f64 y) z)))
#s(approx (- x (* z y)) (*.f64 (neg.f64 y) z))
(*.f64 (neg.f64 y) z)
(neg.f64 y)
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64)))
(*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64))
(*.f64 (*.f64 (*.f64 y y) y) z)
(*.f64 (*.f64 y y) y)
(*.f64 y y)
#s(literal 1/6 binary64)
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y))
(*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y)
(-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z)
(*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64))
(*.f64 (*.f64 y y) z)
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y)))
(*.f64 x #s(approx (cos y) #s(literal 1 binary64)))
#s(approx (cos y) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (* z (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y)
(fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z)
(fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z))
(*.f64 #s(literal 1/120 binary64) (*.f64 y y))
#s(literal 1/120 binary64)
(*.f64 #s(literal -1/6 binary64) z)
#s(literal -1/6 binary64)
Outputs
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (* -1 (* z (sin y)))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (+ (* -1 (* z (sin y))) (* x (cos y)))))
#s(approx (* (cos y) x) #s(hole binary64 (* x (cos y))))
#s(approx x #s(hole binary64 x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (- (* x (cos y)) (* z (sin y)))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* y z))))
#s(approx (- x (* z y)) #s(hole binary64 (- x (* y z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* y (- (* 1/6 (* (pow y 2) z)) z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ (* x (+ 1 (* -1/2 (pow y 2)))) (* y (- (* 1/6 (* (pow y 2) z)) z)))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (* x (+ (cos y) (* -1 (/ (* z (sin y)) x))))))
#s(approx (- x (* z y)) #s(hole binary64 (* x (+ 1 (* -1 (/ (* y z) x))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* x (+ 1 (* -1/2 (pow y 2))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* x (+ 1 (+ (* -1/2 (pow y 2)) (/ (* y (- (* 1/6 (* (pow y 2) z)) z)) x))))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (* -1 (* x (+ (* -1 (cos y)) (/ (* z (sin y)) x))))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* x (- (/ (* y z) x) 1)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* x (- (* 1/2 (pow y 2)) 1)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (* y (- (* 1/6 (* (pow y 2) z)) z)) x)) (* 1/2 (pow y 2))) 1)))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (+ x (* -1 (* y z)))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (+ x (* y (+ (* -1 z) (* -1/2 (* x y)))))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (+ x (* y (+ (* -1 z) (* y (+ (* -1/2 x) (* 1/6 (* y z)))))))))
#s(approx (sin y) #s(hole binary64 y))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))))
#s(approx (* (cos y) x) #s(hole binary64 (+ x (* -1/2 (* x (pow y 2))))))
#s(approx (* (cos y) x) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* 1/24 (* x (pow y 2))))))))
#s(approx (* (cos y) x) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* (pow y 2) (+ (* -1/720 (* x (pow y 2))) (* 1/24 x))))))))
#s(approx (cos y) #s(hole binary64 1))
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* -1/2 (* x y)) z)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/2 x) (* 1/6 (* y z)))) z)))))
#s(approx (neg y) #s(hole binary64 (* -1 y)))
#s(approx (* (* (* (* y y) y) z) 1/6) #s(hole binary64 (* 1/6 (* (pow y 3) z))))
#s(approx (* (* (* y y) y) z) #s(hole binary64 (* (pow y 3) z)))
#s(approx (* (* y y) y) #s(hole binary64 (pow y 3)))
#s(approx (* y y) #s(hole binary64 (pow y 2)))
#s(approx (* (- (* (* (* y y) z) 1/6) z) y) #s(hole binary64 (* y (+ (* -1 z) (* 1/6 (* (pow y 2) z))))))
#s(approx (- (* (* (* y y) z) 1/6) z) #s(hole binary64 (* -1 z)))
#s(approx (- (* (* (* y y) z) 1/6) z) #s(hole binary64 (- (* 1/6 (* (pow y 2) z)) z)))
#s(approx (* (* (* y y) z) 1/6) #s(hole binary64 (* 1/6 (* (pow y 2) z))))
#s(approx (* (* y y) z) #s(hole binary64 (* (pow y 2) z)))
#s(approx (* z (sin y)) #s(hole binary64 (* y z)))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* -1/6 (* (pow y 2) z))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* 1/120 (* (pow y 2) z))))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* (pow y 2) (+ (* -1/5040 (* (pow y 2) z)) (* 1/120 z)))))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 z))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (+ z (* -1/6 (* (pow y 2) z)))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/6 z) (* 1/120 (* (pow y 2) z)))))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* -1/6 z)))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (+ (* -1/6 z) (* 1/120 (* (pow y 2) z)))))
#s(approx (* 1/120 (* y y)) #s(hole binary64 (* 1/120 (pow y 2))))
#s(approx (sin y) #s(hole binary64 (sin y)))
#s(approx (cos y) #s(hole binary64 (cos y)))
#s(approx (- x (* z y)) #s(hole binary64 (* y (- (/ x y) z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (+ (* -1/2 (/ x y)) (* 1/6 z)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (+ (* -1 (/ z (pow y 2))) (+ (* -1/2 (/ x y)) (* 1/6 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (- (+ (* -1/2 (/ x y)) (+ (* 1/6 z) (/ x (pow y 3)))) (/ z (pow y 2))))))
#s(approx (* (- (* (* (* y y) z) 1/6) z) y) #s(hole binary64 (* (pow y 3) (+ (* -1 (/ z (pow y 2))) (* 1/6 z)))))
#s(approx (- (* (* (* y y) z) 1/6) z) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ z (pow y 2))) (* 1/6 z)))))
#s(approx (* z (sin y)) #s(hole binary64 (* z (sin y))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* 1/120 (* (pow y 5) z))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* (pow y 5) (+ (* -1/6 (/ z (pow y 2))) (* 1/120 z)))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* (pow y 5) (+ (* -1/6 (/ z (pow y 2))) (+ (* 1/120 z) (/ z (pow y 4)))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* 1/120 (* (pow y 4) z))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* (pow y 4) (+ (* -1/6 (/ z (pow y 2))) (* 1/120 z)))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* (pow y 4) (+ (* -1/6 (/ z (pow y 2))) (+ (* 1/120 z) (/ z (pow y 4)))))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* 1/120 (* (pow y 2) z))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* (pow y 2) (+ (* -1/6 (/ z (pow y 2))) (* 1/120 z)))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) (* -1 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1/6 z) (* 1/2 (/ x y)))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1 (/ (+ (* -1 (/ z y)) (* -1/2 x)) y)) (* -1/6 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1 (/ (+ (* -1 (/ (+ z (* -1 (/ x y))) y)) (* -1/2 x)) y)) (* -1/6 z))))))
#s(approx (* (- (* (* (* y y) z) 1/6) z) y) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1/6 z) (/ z (pow y 2)))))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* -1 (* (pow y 5) (+ (* -1/120 z) (* 1/6 (/ z (pow y 2))))))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* -1 (* (pow y 5) (+ (* -1 (/ z (pow y 4))) (+ (* -1/120 z) (* 1/6 (/ z (pow y 2)))))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ x (+ (* -1/2 (* x (pow y 2))) (* y (* z (- (* 1/6 (pow y 2)) 1)))))))
#s(approx (* (- (* (* (* y y) z) 1/6) z) y) #s(hole binary64 (* y (* z (- (* 1/6 (pow y 2)) 1)))))
#s(approx (- (* (* (* y y) z) 1/6) z) #s(hole binary64 (* z (- (* 1/6 (pow y 2)) 1))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* y (* z (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* z (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* z (- (* 1/120 (pow y 2)) 1/6))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (* z (+ (* -1 (sin y)) (/ (* x (cos y)) z)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* z (- (/ (* x (cos y)) z) (sin y)))))
#s(approx (- x (* z y)) #s(hole binary64 (* z (- (/ x z) y))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* z (+ (* -1/2 (/ (* x (pow y 2)) z)) (+ (* y (- (* 1/6 (pow y 2)) 1)) (/ x z))))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (* -1 (* z (+ (sin y) (* -1 (/ (* x (cos y)) z)))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* -1 (* z (- (* -1 (/ (* x (cos y)) z)) (* -1 (sin y)))))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* z (- (* -1 (/ x z)) (* -1 y))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* y (* z (+ 1 (* -1/6 (pow y 2))))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* z (+ (* -1 (/ (+ x (* -1/2 (* x (pow y 2)))) z)) (* y (+ 1 (* -1/6 (pow y 2)))))))))
#s(approx (- (* (* (* y y) z) 1/6) z) #s(hole binary64 (* -1 (* z (+ 1 (* -1/6 (pow y 2)))))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* -1 (* y (* z (- (* (pow y 2) (+ 1/6 (* -1/120 (pow y 2)))) 1))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* -1 (* z (- (* (pow y 2) (+ 1/6 (* -1/120 (pow y 2)))) 1)))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* -1 (* z (+ 1/6 (* -1/120 (pow y 2)))))))
Calls

9 calls:

TimeVariablePointExpression
14.0ms
y
@inf
((+ (* (sin y) (neg z)) (* (cos y) x)) (sin y) y (neg z) z (* (cos y) x) (cos y) x (- (* x (cos y)) (* z (sin y))) (- x (* z y)) (* (neg y) z) (neg y) (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (* (* (* y y) y) z) 1/6) (* (* (* y y) y) z) (* (* y y) y) (* y y) 1/6 (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (- (* (* (* y y) z) 1/6) z) y) (- (* (* (* y y) z) 1/6) z) (* (* (* y y) z) 1/6) (* (* y y) z) (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) 1 (* z (sin y)) (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* 1/120 (* y y)) 1/120 (* -1/6 z) -1/6)
9.0ms
z
@inf
((+ (* (sin y) (neg z)) (* (cos y) x)) (sin y) y (neg z) z (* (cos y) x) (cos y) x (- (* x (cos y)) (* z (sin y))) (- x (* z y)) (* (neg y) z) (neg y) (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (* (* (* y y) y) z) 1/6) (* (* (* y y) y) z) (* (* y y) y) (* y y) 1/6 (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (- (* (* (* y y) z) 1/6) z) y) (- (* (* (* y y) z) 1/6) z) (* (* (* y y) z) 1/6) (* (* y y) z) (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) 1 (* z (sin y)) (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* 1/120 (* y y)) 1/120 (* -1/6 z) -1/6)
5.0ms
z
@-inf
((+ (* (sin y) (neg z)) (* (cos y) x)) (sin y) y (neg z) z (* (cos y) x) (cos y) x (- (* x (cos y)) (* z (sin y))) (- x (* z y)) (* (neg y) z) (neg y) (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (* (* (* y y) y) z) 1/6) (* (* (* y y) y) z) (* (* y y) y) (* y y) 1/6 (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (- (* (* (* y y) z) 1/6) z) y) (- (* (* (* y y) z) 1/6) z) (* (* (* y y) z) 1/6) (* (* y y) z) (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) 1 (* z (sin y)) (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* 1/120 (* y y)) 1/120 (* -1/6 z) -1/6)
5.0ms
z
@0
((+ (* (sin y) (neg z)) (* (cos y) x)) (sin y) y (neg z) z (* (cos y) x) (cos y) x (- (* x (cos y)) (* z (sin y))) (- x (* z y)) (* (neg y) z) (neg y) (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (* (* (* y y) y) z) 1/6) (* (* (* y y) y) z) (* (* y y) y) (* y y) 1/6 (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (- (* (* (* y y) z) 1/6) z) y) (- (* (* (* y y) z) 1/6) z) (* (* (* y y) z) 1/6) (* (* y y) z) (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) 1 (* z (sin y)) (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* 1/120 (* y y)) 1/120 (* -1/6 z) -1/6)
4.0ms
y
@-inf
((+ (* (sin y) (neg z)) (* (cos y) x)) (sin y) y (neg z) z (* (cos y) x) (cos y) x (- (* x (cos y)) (* z (sin y))) (- x (* z y)) (* (neg y) z) (neg y) (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (* (* (* y y) y) z) 1/6) (* (* (* y y) y) z) (* (* y y) y) (* y y) 1/6 (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (- (* (* (* y y) z) 1/6) z) y) (- (* (* (* y y) z) 1/6) z) (* (* (* y y) z) 1/6) (* (* y y) z) (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) 1 (* z (sin y)) (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* 1/120 (* y y)) 1/120 (* -1/6 z) -1/6)

rewrite331.0ms (9.2%)

Memory
16.1MiB live, 287.7MiB allocated; 63ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04252574
04632466
125962466
096342317
1330242317
Stop Event
saturated
node-limit
iter-limit
Counts
133 → 241
Calls
Call 1
Inputs
(fma.f64 (sin.f64 y) (neg.f64 z) (*.f64 (cos.f64 y) x))
(sin.f64 y)
y
(neg.f64 z)
z
(*.f64 (cos.f64 y) x)
(cos.f64 y)
x
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (*.f64 (neg.f64 y) z)))
#s(approx (- x (* z y)) (*.f64 (neg.f64 y) z))
(*.f64 (neg.f64 y) z)
(neg.f64 y)
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64)))
(*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64))
(*.f64 (*.f64 (*.f64 y y) y) z)
(*.f64 (*.f64 y y) y)
(*.f64 y y)
#s(literal 1/6 binary64)
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y))
(*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y)
(-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z)
(*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64))
(*.f64 (*.f64 y y) z)
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y)))
(*.f64 x #s(approx (cos y) #s(literal 1 binary64)))
#s(approx (cos y) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (* z (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y)
(fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z)
(fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z))
(*.f64 #s(literal 1/120 binary64) (*.f64 y y))
#s(literal 1/120 binary64)
(*.f64 #s(literal -1/6 binary64) z)
#s(literal -1/6 binary64)
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (* -1 (* z (sin y)))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (+ (* -1 (* z (sin y))) (* x (cos y)))))
#s(approx (* (cos y) x) #s(hole binary64 (* x (cos y))))
#s(approx x #s(hole binary64 x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (- (* x (cos y)) (* z (sin y)))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* y z))))
#s(approx (- x (* z y)) #s(hole binary64 (- x (* y z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* y (- (* 1/6 (* (pow y 2) z)) z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ (* x (+ 1 (* -1/2 (pow y 2)))) (* y (- (* 1/6 (* (pow y 2) z)) z)))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (* x (+ (cos y) (* -1 (/ (* z (sin y)) x))))))
#s(approx (- x (* z y)) #s(hole binary64 (* x (+ 1 (* -1 (/ (* y z) x))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* x (+ 1 (* -1/2 (pow y 2))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* x (+ 1 (+ (* -1/2 (pow y 2)) (/ (* y (- (* 1/6 (* (pow y 2) z)) z)) x))))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (* -1 (* x (+ (* -1 (cos y)) (/ (* z (sin y)) x))))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* x (- (/ (* y z) x) 1)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* x (- (* 1/2 (pow y 2)) 1)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (* y (- (* 1/6 (* (pow y 2) z)) z)) x)) (* 1/2 (pow y 2))) 1)))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (+ x (* -1 (* y z)))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (+ x (* y (+ (* -1 z) (* -1/2 (* x y)))))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (+ x (* y (+ (* -1 z) (* y (+ (* -1/2 x) (* 1/6 (* y z)))))))))
#s(approx (sin y) #s(hole binary64 y))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))))
#s(approx (* (cos y) x) #s(hole binary64 (+ x (* -1/2 (* x (pow y 2))))))
#s(approx (* (cos y) x) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* 1/24 (* x (pow y 2))))))))
#s(approx (* (cos y) x) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* (pow y 2) (+ (* -1/720 (* x (pow y 2))) (* 1/24 x))))))))
#s(approx (cos y) #s(hole binary64 1))
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* -1/2 (* x y)) z)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/2 x) (* 1/6 (* y z)))) z)))))
#s(approx (neg y) #s(hole binary64 (* -1 y)))
#s(approx (* (* (* (* y y) y) z) 1/6) #s(hole binary64 (* 1/6 (* (pow y 3) z))))
#s(approx (* (* (* y y) y) z) #s(hole binary64 (* (pow y 3) z)))
#s(approx (* (* y y) y) #s(hole binary64 (pow y 3)))
#s(approx (* y y) #s(hole binary64 (pow y 2)))
#s(approx (* (- (* (* (* y y) z) 1/6) z) y) #s(hole binary64 (* y (+ (* -1 z) (* 1/6 (* (pow y 2) z))))))
#s(approx (- (* (* (* y y) z) 1/6) z) #s(hole binary64 (* -1 z)))
#s(approx (- (* (* (* y y) z) 1/6) z) #s(hole binary64 (- (* 1/6 (* (pow y 2) z)) z)))
#s(approx (* (* (* y y) z) 1/6) #s(hole binary64 (* 1/6 (* (pow y 2) z))))
#s(approx (* (* y y) z) #s(hole binary64 (* (pow y 2) z)))
#s(approx (* z (sin y)) #s(hole binary64 (* y z)))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* -1/6 (* (pow y 2) z))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* 1/120 (* (pow y 2) z))))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* (pow y 2) (+ (* -1/5040 (* (pow y 2) z)) (* 1/120 z)))))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 z))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (+ z (* -1/6 (* (pow y 2) z)))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/6 z) (* 1/120 (* (pow y 2) z)))))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* -1/6 z)))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (+ (* -1/6 z) (* 1/120 (* (pow y 2) z)))))
#s(approx (* 1/120 (* y y)) #s(hole binary64 (* 1/120 (pow y 2))))
#s(approx (sin y) #s(hole binary64 (sin y)))
#s(approx (cos y) #s(hole binary64 (cos y)))
#s(approx (- x (* z y)) #s(hole binary64 (* y (- (/ x y) z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (+ (* -1/2 (/ x y)) (* 1/6 z)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (+ (* -1 (/ z (pow y 2))) (+ (* -1/2 (/ x y)) (* 1/6 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (- (+ (* -1/2 (/ x y)) (+ (* 1/6 z) (/ x (pow y 3)))) (/ z (pow y 2))))))
#s(approx (* (- (* (* (* y y) z) 1/6) z) y) #s(hole binary64 (* (pow y 3) (+ (* -1 (/ z (pow y 2))) (* 1/6 z)))))
#s(approx (- (* (* (* y y) z) 1/6) z) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ z (pow y 2))) (* 1/6 z)))))
#s(approx (* z (sin y)) #s(hole binary64 (* z (sin y))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* 1/120 (* (pow y 5) z))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* (pow y 5) (+ (* -1/6 (/ z (pow y 2))) (* 1/120 z)))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* (pow y 5) (+ (* -1/6 (/ z (pow y 2))) (+ (* 1/120 z) (/ z (pow y 4)))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* 1/120 (* (pow y 4) z))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* (pow y 4) (+ (* -1/6 (/ z (pow y 2))) (* 1/120 z)))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* (pow y 4) (+ (* -1/6 (/ z (pow y 2))) (+ (* 1/120 z) (/ z (pow y 4)))))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* 1/120 (* (pow y 2) z))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* (pow y 2) (+ (* -1/6 (/ z (pow y 2))) (* 1/120 z)))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) (* -1 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1/6 z) (* 1/2 (/ x y)))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1 (/ (+ (* -1 (/ z y)) (* -1/2 x)) y)) (* -1/6 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1 (/ (+ (* -1 (/ (+ z (* -1 (/ x y))) y)) (* -1/2 x)) y)) (* -1/6 z))))))
#s(approx (* (- (* (* (* y y) z) 1/6) z) y) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1/6 z) (/ z (pow y 2)))))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* -1 (* (pow y 5) (+ (* -1/120 z) (* 1/6 (/ z (pow y 2))))))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* -1 (* (pow y 5) (+ (* -1 (/ z (pow y 4))) (+ (* -1/120 z) (* 1/6 (/ z (pow y 2)))))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ x (+ (* -1/2 (* x (pow y 2))) (* y (* z (- (* 1/6 (pow y 2)) 1)))))))
#s(approx (* (- (* (* (* y y) z) 1/6) z) y) #s(hole binary64 (* y (* z (- (* 1/6 (pow y 2)) 1)))))
#s(approx (- (* (* (* y y) z) 1/6) z) #s(hole binary64 (* z (- (* 1/6 (pow y 2)) 1))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* y (* z (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* z (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* z (- (* 1/120 (pow y 2)) 1/6))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (* z (+ (* -1 (sin y)) (/ (* x (cos y)) z)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* z (- (/ (* x (cos y)) z) (sin y)))))
#s(approx (- x (* z y)) #s(hole binary64 (* z (- (/ x z) y))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* z (+ (* -1/2 (/ (* x (pow y 2)) z)) (+ (* y (- (* 1/6 (pow y 2)) 1)) (/ x z))))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(hole binary64 (* -1 (* z (+ (sin y) (* -1 (/ (* x (cos y)) z)))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* -1 (* z (- (* -1 (/ (* x (cos y)) z)) (* -1 (sin y)))))))
#s(approx (- x (* z y)) #s(hole binary64 (* -1 (* z (- (* -1 (/ x z)) (* -1 y))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* y (* z (+ 1 (* -1/6 (pow y 2))))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* z (+ (* -1 (/ (+ x (* -1/2 (* x (pow y 2)))) z)) (* y (+ 1 (* -1/6 (pow y 2)))))))))
#s(approx (- (* (* (* y y) z) 1/6) z) #s(hole binary64 (* -1 (* z (+ 1 (* -1/6 (pow y 2)))))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* -1 (* y (* z (- (* (pow y 2) (+ 1/6 (* -1/120 (pow y 2)))) 1))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* -1 (* z (- (* (pow y 2) (+ 1/6 (* -1/120 (pow y 2)))) 1)))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* -1 (* z (+ 1/6 (* -1/120 (pow y 2)))))))
Outputs
(neg.f64 (-.f64 (*.f64 (sin.f64 y) z) (*.f64 (cos.f64 y) x)))
(fma.f64 (neg.f64 z) (sin.f64 y) (*.f64 (cos.f64 y) x))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 y) z) (*.f64 (cos.f64 y) x))
(fma.f64 (*.f64 (sin.f64 y) z) #s(literal -1 binary64) (*.f64 (cos.f64 y) x))
(fma.f64 (sin.f64 y) (neg.f64 z) (*.f64 (cos.f64 y) x))
(fma.f64 (cos.f64 y) x (*.f64 (neg.f64 z) (sin.f64 y)))
(fma.f64 x (cos.f64 y) (*.f64 (neg.f64 z) (sin.f64 y)))
(-.f64 (*.f64 (neg.f64 z) (sin.f64 y)) (*.f64 (neg.f64 (cos.f64 y)) x))
(-.f64 (*.f64 (neg.f64 z) (sin.f64 y)) (*.f64 (neg.f64 x) (cos.f64 y)))
(-.f64 (*.f64 (neg.f64 z) (sin.f64 y)) (neg.f64 (*.f64 (cos.f64 y) x)))
(-.f64 (*.f64 (cos.f64 y) x) (*.f64 (sin.f64 y) z))
(+.f64 (*.f64 (neg.f64 z) (sin.f64 y)) (*.f64 (cos.f64 y) x))
(+.f64 (*.f64 (cos.f64 y) x) (*.f64 (neg.f64 z) (sin.f64 y)))
(sin.f64 y)
y
(*.f64 #s(literal -1 binary64) z)
(*.f64 z #s(literal -1 binary64))
(neg.f64 z)
z
(*.f64 (cos.f64 y) x)
(*.f64 x (cos.f64 y))
(sin.f64 (+.f64 (fabs.f64 y) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 y) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 y (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (sin.f64 y) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (fabs.f64 y)))
(cos.f64 (fabs.f64 (fabs.f64 y)))
(cos.f64 (neg.f64 (neg.f64 y)))
(cos.f64 (fabs.f64 y))
(cos.f64 (neg.f64 y))
(cos.f64 y)
(+.f64 (*.f64 (sin.f64 y) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 y) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
x
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(approx (- x (* z y)) (*.f64 (neg.f64 y) z)))
#s(approx (- x (* z y)) (*.f64 (neg.f64 y) z))
(*.f64 (*.f64 z y) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 z y))
(*.f64 (neg.f64 y) z)
(*.f64 z (neg.f64 y))
(neg.f64 (*.f64 z y))
(*.f64 #s(literal -1 binary64) y)
(*.f64 y #s(literal -1 binary64))
(neg.f64 y)
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) y)) z)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) y)) z))
(*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) y)) z)
(*.f64 (*.f64 (*.f64 y y) y) (*.f64 #s(literal 1/6 binary64) z))
(*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64))
(*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 (*.f64 y y) y) z))
(*.f64 (*.f64 (*.f64 y y) y) z)
(*.f64 (*.f64 y y) (*.f64 z y))
(*.f64 z (*.f64 (*.f64 y y) y))
(*.f64 (*.f64 y y) y)
(*.f64 y (*.f64 y y))
(pow.f64 y #s(literal 3 binary64))
(*.f64 (neg.f64 (fabs.f64 y)) (neg.f64 (fabs.f64 y)))
(*.f64 (fabs.f64 (fabs.f64 y)) (fabs.f64 (fabs.f64 y)))
(*.f64 (neg.f64 (neg.f64 y)) (neg.f64 (neg.f64 y)))
(*.f64 (fabs.f64 y) (fabs.f64 y))
(*.f64 (neg.f64 y) (neg.f64 y))
(*.f64 y y)
(pow.f64 (neg.f64 (fabs.f64 y)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (fabs.f64 y)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 y)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 y) #s(literal 2 binary64))
(pow.f64 (neg.f64 y) #s(literal 2 binary64))
(pow.f64 y #s(literal 2 binary64))
(sqrt.f64 (*.f64 (*.f64 y y) (*.f64 y y)))
(fabs.f64 (neg.f64 (*.f64 y y)))
(fabs.f64 (*.f64 y y))
#s(literal 1/6 binary64)
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y))
(*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y)
(*.f64 y (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z))
(fma.f64 (neg.f64 z) y (*.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) y))
(fma.f64 y (neg.f64 z) (*.f64 y (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64))))
(+.f64 (*.f64 y (neg.f64 z)) (*.f64 y (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64))))
(+.f64 (*.f64 (neg.f64 z) y) (*.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) y))
(neg.f64 (fma.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) z z))
(fma.f64 (*.f64 (*.f64 y y) #s(literal 1/6 binary64)) z (neg.f64 z))
(fma.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64) (neg.f64 z))
(fma.f64 (*.f64 y y) (*.f64 #s(literal 1/6 binary64) z) (neg.f64 z))
(fma.f64 #s(literal -1 binary64) z (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)))
(fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) z) (neg.f64 z))
(fma.f64 z #s(literal -1 binary64) (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)))
(-.f64 (neg.f64 z) (neg.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64))))
(-.f64 (neg.f64 z) (*.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) z))
(-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z)
(+.f64 (neg.f64 z) (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)))
(+.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) (neg.f64 z))
(*.f64 (*.f64 (*.f64 y y) #s(literal 1/6 binary64)) z)
(*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64))
(*.f64 (*.f64 y y) (*.f64 #s(literal 1/6 binary64) z))
(*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) z))
(*.f64 (*.f64 y y) z)
(*.f64 z (*.f64 y y))
(*.f64 y (*.f64 z y))
(neg.f64 (-.f64 #s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) (*.f64 y y) z) y)) (*.f64 #s(approx (cos y) #s(literal 1 binary64)) x)))
(fma.f64 #s(approx (cos y) #s(literal 1 binary64)) x (neg.f64 #s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) (*.f64 y y) z) y))))
(fma.f64 x #s(approx (cos y) #s(literal 1 binary64)) (neg.f64 #s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) (*.f64 y y) z) y))))
(-.f64 (*.f64 #s(approx (cos y) #s(literal 1 binary64)) x) #s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) (*.f64 y y) z) y)))
(+.f64 (*.f64 #s(approx (cos y) #s(literal 1 binary64)) x) (neg.f64 #s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) (*.f64 y y) z) y))))
(*.f64 #s(approx (cos y) #s(literal 1 binary64)) x)
(*.f64 x #s(approx (cos y) #s(literal 1 binary64)))
#s(approx (cos y) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) (*.f64 y y) z) y))
(*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) (*.f64 y y) z) y)
(*.f64 y (fma.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) (*.f64 y y) z))
(fma.f64 z y (*.f64 y (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) y) y)))
(fma.f64 z y (*.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) y) y) y))
(fma.f64 y z (*.f64 y (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) y) y)))
(fma.f64 y z (*.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) y) y) y))
(+.f64 (*.f64 z y) (*.f64 y (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) y) y)))
(+.f64 (*.f64 z y) (*.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) y) y) y))
(fma.f64 (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) y) y z)
(fma.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) (*.f64 y y) z)
(fma.f64 (*.f64 y y) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) z)
(-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) y) y) (neg.f64 z))
(-.f64 z (*.f64 (neg.f64 (*.f64 y y)) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z)))
(-.f64 z (neg.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) y) y)))
(+.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) y) y) z)
(+.f64 z (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) y) y))
(*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z)
(*.f64 z (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)))
(fma.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z (*.f64 #s(literal -1/6 binary64) z))
(fma.f64 (*.f64 (*.f64 y y) z) #s(literal 1/120 binary64) (*.f64 #s(literal -1/6 binary64) z))
(fma.f64 #s(literal -1/6 binary64) z (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z))
(fma.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 y y) z) (*.f64 #s(literal -1/6 binary64) z))
(fma.f64 z (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 #s(literal -1/6 binary64) z))
(fma.f64 z #s(literal -1/6 binary64) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z))
(-.f64 (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z) (neg.f64 (*.f64 #s(literal -1/6 binary64) z)))
(-.f64 (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z) (*.f64 #s(literal 1/6 binary64) z))
(-.f64 (*.f64 #s(literal -1/6 binary64) z) (*.f64 #s(literal -1/120 binary64) (*.f64 (*.f64 y y) z)))
(-.f64 (*.f64 #s(literal -1/6 binary64) z) (neg.f64 (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)))
(+.f64 (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z) (*.f64 #s(literal -1/6 binary64) z))
(+.f64 (*.f64 #s(literal -1/6 binary64) z) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z))
(*.f64 (*.f64 #s(literal 1/120 binary64) y) y)
(*.f64 (*.f64 y y) #s(literal 1/120 binary64))
(*.f64 #s(literal 1/120 binary64) (*.f64 y y))
#s(literal 1/120 binary64)
(*.f64 #s(literal -1/6 binary64) z)
(*.f64 z #s(literal -1/6 binary64))
#s(literal -1/6 binary64)
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) (*.f64 (neg.f64 z) (sin.f64 y)))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) (-.f64 (*.f64 (cos.f64 y) x) (*.f64 (sin.f64 y) z)))
#s(approx (* (cos y) x) (*.f64 (cos.f64 y) x))
#s(approx x x)
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) (-.f64 (*.f64 (cos.f64 y) x) (*.f64 (sin.f64 y) z)))
#s(approx (- x (* z y)) (*.f64 (neg.f64 y) z))
#s(approx (- x (* z y)) (-.f64 x (*.f64 z y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (fma.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x)))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) (*.f64 (+.f64 (/.f64 (*.f64 (neg.f64 z) (sin.f64 y)) x) (cos.f64 y)) x))
#s(approx (- x (* z y)) (*.f64 (+.f64 (/.f64 (*.f64 (neg.f64 y) z) x) #s(literal 1 binary64)) x))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (+.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) (*.f64 y (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) x))) #s(literal 1 binary64)) x))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) (neg.f64 (*.f64 (fma.f64 z (/.f64 (sin.f64 y) x) (neg.f64 (cos.f64 y))) x)))
#s(approx (- x (* z y)) (neg.f64 (*.f64 (fma.f64 y (/.f64 z x) #s(literal -1 binary64)) x)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (neg.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) #s(literal -1 binary64)) x)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (neg.f64 (*.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y y) (neg.f64 (*.f64 y (/.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) x)))) #s(literal 1 binary64)) x)))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) (-.f64 x (*.f64 z y)))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) (fma.f64 (-.f64 (*.f64 (*.f64 x y) #s(literal -1/2 binary64)) z) y x))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
#s(approx (sin y) y)
#s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))
#s(approx (sin y) (*.f64 (fma.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y))
#s(approx (sin y) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y))
#s(approx (* (cos y) x) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/2 binary64) x))
#s(approx (* (cos y) x) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 y y) x) (*.f64 #s(literal -1/2 binary64) x)) (*.f64 y y) x))
#s(approx (* (cos y) x) (fma.f64 (fma.f64 (*.f64 y y) (fma.f64 #s(literal -1/720 binary64) (*.f64 (*.f64 y y) x) (*.f64 #s(literal 1/24 binary64) x)) (*.f64 #s(literal -1/2 binary64) x)) (*.f64 y y) x))
#s(approx (cos y) #s(literal 1 binary64))
#s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos y) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 y y) #s(literal -1/2 binary64)) (*.f64 y y) #s(literal 1 binary64)))
#s(approx (cos y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 y y) #s(literal 1/24 binary64)) (*.f64 y y) #s(literal -1/2 binary64)) (*.f64 y y) #s(literal 1 binary64)))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) (fma.f64 (-.f64 (*.f64 (*.f64 x y) #s(literal -1/2 binary64)) z) y x))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
#s(approx (neg y) (neg.f64 y))
#s(approx (* (* (* (* y y) y) z) 1/6) (*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) y)) z))
#s(approx (* (* (* y y) y) z) (*.f64 (*.f64 (*.f64 y y) y) z))
#s(approx (* (* y y) y) (*.f64 (*.f64 y y) y))
#s(approx (* y y) (*.f64 y y))
#s(approx (* (- (* (* (* y y) z) 1/6) z) y) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y))
#s(approx (- (* (* (* y y) z) 1/6) z) (neg.f64 z))
#s(approx (- (* (* (* y y) z) 1/6) z) (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z))
#s(approx (* (* (* y y) z) 1/6) (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)))
#s(approx (* (* y y) z) (*.f64 (*.f64 y y) z))
#s(approx (* z (sin y)) (*.f64 z y))
#s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) z z) y))
#s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) (*.f64 y y) z) y))
#s(approx (* z (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 y y) (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) z (*.f64 #s(literal 1/120 binary64) z)) (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) z)
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (fma.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) z z))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (fma.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) (*.f64 y y) z))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 #s(literal -1/6 binary64) z))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z))
#s(approx (* 1/120 (* y y)) (*.f64 (*.f64 y y) #s(literal 1/120 binary64)))
#s(approx (sin y) (sin.f64 y))
#s(approx (cos y) (cos.f64 y))
#s(approx (- x (* z y)) (*.f64 (-.f64 (/.f64 x y) z) y))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z)) (*.f64 (*.f64 y y) y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (+.f64 (/.f64 (neg.f64 z) (*.f64 y y)) (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z))) (*.f64 (*.f64 y y) y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (fma.f64 #s(literal 1/6 binary64) z (/.f64 x (*.f64 (*.f64 y y) y)))) (/.f64 z (*.f64 y y))) (*.f64 (*.f64 y y) y)))
#s(approx (* (- (* (* (* y y) z) 1/6) z) y) (*.f64 (fma.f64 #s(literal 1/6 binary64) z (/.f64 (neg.f64 z) (*.f64 y y))) (*.f64 (*.f64 y y) y)))
#s(approx (- (* (* (* y y) z) 1/6) z) (*.f64 (fma.f64 #s(literal 1/6 binary64) z (/.f64 (neg.f64 z) (*.f64 y y))) (*.f64 y y)))
#s(approx (* z (sin y)) (*.f64 (sin.f64 y) z))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (*.f64 (*.f64 (pow.f64 y #s(literal 5 binary64)) z) #s(literal 1/120 binary64)))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (*.f64 (fma.f64 (/.f64 z (*.f64 y y)) #s(literal -1/6 binary64) (*.f64 #s(literal 1/120 binary64) z)) (pow.f64 y #s(literal 5 binary64))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (*.f64 (fma.f64 (/.f64 z (*.f64 y y)) #s(literal -1/6 binary64) (fma.f64 #s(literal 1/120 binary64) z (*.f64 z (pow.f64 y #s(literal -4 binary64))))) (pow.f64 y #s(literal 5 binary64))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (*.f64 (*.f64 (pow.f64 y #s(literal 4 binary64)) z) #s(literal 1/120 binary64)))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (*.f64 (pow.f64 y #s(literal 4 binary64)) (fma.f64 (/.f64 z (*.f64 y y)) #s(literal -1/6 binary64) (*.f64 #s(literal 1/120 binary64) z))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (*.f64 (fma.f64 (/.f64 z (*.f64 y y)) #s(literal -1/6 binary64) (fma.f64 #s(literal 1/120 binary64) z (*.f64 z (pow.f64 y #s(literal -4 binary64))))) (pow.f64 y #s(literal 4 binary64))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (fma.f64 (/.f64 z (*.f64 y y)) #s(literal -1/6 binary64) (*.f64 #s(literal 1/120 binary64) z)) (*.f64 y y)))
#s(approx (- x (* z y)) (*.f64 (neg.f64 y) (-.f64 (neg.f64 (/.f64 x y)) (neg.f64 z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (neg.f64 y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (neg.f64 y)) (fma.f64 #s(literal -1/6 binary64) z (neg.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) x (/.f64 (neg.f64 z) y)) y)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (neg.f64 y)) (fma.f64 #s(literal -1/6 binary64) z (neg.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) x (neg.f64 (/.f64 (+.f64 (neg.f64 (/.f64 x y)) z) y))) y)))))
#s(approx (* (- (* (* (* y y) z) 1/6) z) y) (*.f64 (*.f64 (*.f64 y y) (neg.f64 y)) (fma.f64 #s(literal -1/6 binary64) z (/.f64 z (*.f64 y y)))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (neg.f64 (*.f64 (fma.f64 #s(literal -1/120 binary64) z (*.f64 (/.f64 z (*.f64 y y)) #s(literal 1/6 binary64))) (pow.f64 y #s(literal 5 binary64)))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (neg.f64 (*.f64 (+.f64 (neg.f64 (*.f64 z (pow.f64 y #s(literal -4 binary64)))) (fma.f64 #s(literal -1/120 binary64) z (*.f64 (/.f64 z (*.f64 y y)) #s(literal 1/6 binary64)))) (pow.f64 y #s(literal 5 binary64)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (+.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z) y (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/2 binary64))) x))
#s(approx (* (- (* (* (* y y) z) 1/6) z) y) (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z) y))
#s(approx (- (* (* (* y y) z) 1/6) z) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) z) y))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (*.f64 (fma.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) z))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) (*.f64 (-.f64 (/.f64 (*.f64 (cos.f64 y) x) z) (sin.f64 y)) z))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) (*.f64 (-.f64 (/.f64 (*.f64 (cos.f64 y) x) z) (sin.f64 y)) z))
#s(approx (- x (* z y)) (*.f64 (-.f64 (/.f64 x z) y) z))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (/.f64 (*.f64 (*.f64 y y) x) z) #s(literal -1/2 binary64) (fma.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) y (/.f64 x z))) z))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) (*.f64 (neg.f64 z) (+.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 y) x) z)) (sin.f64 y))))
#s(approx (+ (* (sin y) (neg z)) (* (cos y) x)) (*.f64 (neg.f64 z) (neg.f64 (-.f64 (/.f64 (*.f64 (cos.f64 y) x) z) (sin.f64 y)))))
#s(approx (- x (* z y)) (*.f64 (neg.f64 z) (-.f64 (neg.f64 (/.f64 x z)) (neg.f64 y))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (neg.f64 y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) z)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (neg.f64 z) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y (neg.f64 (/.f64 (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/2 binary64) x) z)))))
#s(approx (- (* (* (* y y) z) 1/6) z) (*.f64 (neg.f64 z) (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (*.f64 (neg.f64 y) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 y y) #s(literal 1/6 binary64)) (*.f64 y y) #s(literal -1 binary64)) z)))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (*.f64 (neg.f64 z) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 y y) #s(literal 1/6 binary64)) (*.f64 y y) #s(literal -1 binary64))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (neg.f64 z) (fma.f64 #s(literal -1/120 binary64) (*.f64 y y) #s(literal 1/6 binary64))))

eval38.0ms (1%)

Memory
-33.7MiB live, 66.2MiB allocated; 16ms collecting garbage
Compiler

Compiled 2 372 to 1 120 computations (52.8% saved)

prune21.0ms (0.6%)

Memory
8.1MiB live, 52.5MiB allocated; 4ms collecting garbage
Pruning

26 alts after pruning (19 fresh and 7 done)

PrunedKeptTotal
New2265231
Fresh11415
Picked235
Done044
Total22926255
Accuracy
99.8%
Counts
255 → 26
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.8%
(fma.f64 (sin.f64 y) (neg.f64 z) (*.f64 (cos.f64 y) x))
99.8%
(fma.f64 (cos.f64 y) x (*.f64 (neg.f64 z) (sin.f64 y)))
99.6%
(-.f64 (*.f64 x (fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) (*.f64 z (sin.f64 y)))
99.8%
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
60.0%
(-.f64 (*.f64 x (cos.f64 y)) #s(approx (* z (sin y)) (*.f64 z y)))
75.0%
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) (*.f64 z (sin.f64 y)))
45.5%
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)))
49.1%
(-.f64 #s(approx (* x (cos y)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 y y) x) (*.f64 #s(literal -1/2 binary64) x)) y) y x)) (*.f64 z (sin.f64 y)))
45.7%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) z) y x))
46.1%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 #s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (*.f64 (*.f64 z y) #s(literal 1/6 binary64))) y) z) y x))
46.5%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (neg.f64 y) z x))
46.1%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z)) y x))
34.6%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (*.f64 x y) #s(literal -1/2 binary64))) y x))
46.5%
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
85.4%
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (-.f64 (/.f64 (*.f64 (cos.f64 y) x) z) (sin.f64 y)) z))
41.7%
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
92.7%
#s(approx (- (* x (cos y)) (* z (sin y))) (neg.f64 (*.f64 (fma.f64 z (/.f64 (sin.f64 y) x) (neg.f64 (cos.f64 y))) x)))
14.0%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (*.f64 (neg.f64 y) z)))
42.3%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (neg.f64 (*.f64 (fma.f64 y (/.f64 z x) #s(literal -1 binary64)) x))))
2.6%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z)) (*.f64 (*.f64 y y) y))))
34.6%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x)))
14.0%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64)) z) y)))
14.0%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y y) (*.f64 #s(literal 1/6 binary64) z)) z) y)))
2.9%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64))))
2.9%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (*.f64 z y)) #s(literal 1/6 binary64))))
2.9%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) y)) z)))
Compiler

Compiled 842 to 834 computations (1% saved)

series52.0ms (1.4%)

Memory
22.0MiB live, 123.7MiB allocated; 11ms collecting garbage
Counts
42 → 115
Calls
Call 1
Inputs
(-.f64 (*.f64 x (fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) (*.f64 z (sin.f64 y)))
(*.f64 x (fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
x
(fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(sin.f64 y)
y
(cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))
(*.f64 (PI.f64) #s(literal 1/2 binary64))
(PI.f64)
#s(literal 1/2 binary64)
(*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 y)
(sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))
(*.f64 z (sin.f64 y))
z
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (neg.f64 y) z x))
(fma.f64 (neg.f64 y) z x)
(neg.f64 y)
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (*.f64 z y)) #s(literal 1/6 binary64))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (*.f64 z y)) #s(literal 1/6 binary64)))
(*.f64 (*.f64 (*.f64 y y) (*.f64 z y)) #s(literal 1/6 binary64))
(*.f64 (*.f64 y y) (*.f64 z y))
(*.f64 y y)
(*.f64 z y)
#s(literal 1/6 binary64)
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64)) z) y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64)) z) y))
(*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64)) z) y)
(-.f64 (*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64)) z)
(*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64))
(*.f64 y (*.f64 z y))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)))
(*.f64 x #s(approx (cos y) #s(literal 1 binary64)))
#s(approx (cos y) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y))
(*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)
(fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z)
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z))
(*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)
(*.f64 (*.f64 y y) #s(literal 1/120 binary64))
#s(literal 1/120 binary64)
Outputs
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (* -1 (* z (sin y)))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (- (* x (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y)))) (* z (sin y)))))
#s(approx (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) #s(hole binary64 (* x (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y))))))
#s(approx x #s(hole binary64 x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (- (* x (cos y)) (* z (sin y)))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (* -1 (* y z))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (+ x (* -1 (* y z)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* y (- (* 1/6 (* (pow y 2) z)) z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ (* x (+ 1 (* -1/2 (pow y 2)))) (* y (- (* 1/6 (* (pow y 2) z)) z)))))
#s(approx (* x (cos y)) #s(hole binary64 (* x (cos y))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (* x (+ (* -1 (/ (* z (sin y)) x)) (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y)))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* x (+ (cos y) (* -1 (/ (* z (sin y)) x))))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (* x (+ 1 (* -1 (/ (* y z) x))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* x (+ 1 (* -1/2 (pow y 2))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* x (+ 1 (+ (* -1/2 (pow y 2)) (/ (* y (- (* 1/6 (* (pow y 2) z)) z)) x))))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (* -1 (* x (+ (* -1 (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y)))) (/ (* z (sin y)) x))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* -1 (* x (+ (* -1 (cos y)) (/ (* z (sin y)) x))))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (* -1 (* x (- (/ (* y z) x) 1)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* x (- (* 1/2 (pow y 2)) 1)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (* y (- (* 1/6 (* (pow y 2) z)) z)) x)) (* 1/2 (pow y 2))) 1)))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (* x (sin (* 1/2 (PI))))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (+ (* x (sin (* 1/2 (PI)))) (* y (- (* x (cos (* 1/2 (PI)))) z)))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (+ (* x (sin (* 1/2 (PI)))) (* y (- (+ (* -1/2 (* x (* y (sin (* 1/2 (PI)))))) (* x (cos (* 1/2 (PI))))) z)))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (+ (* x (sin (* 1/2 (PI)))) (* y (- (+ (* x (cos (* 1/2 (PI)))) (* y (+ (* -1/2 (* x (sin (* 1/2 (PI))))) (* y (- (* -1/6 (* x (cos (* 1/2 (PI))))) (* -1/6 z)))))) z)))))
#s(approx (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) #s(hole binary64 (+ (* x (sin (* 1/2 (PI)))) (* x (* y (cos (* 1/2 (PI))))))))
#s(approx (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) #s(hole binary64 (+ (* x (sin (* 1/2 (PI)))) (* y (+ (* -1/2 (* x (* y (sin (* 1/2 (PI)))))) (* x (cos (* 1/2 (PI)))))))))
#s(approx (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) #s(hole binary64 (+ (* x (sin (* 1/2 (PI)))) (* y (+ (* x (cos (* 1/2 (PI)))) (* y (+ (* -1/2 (* x (sin (* 1/2 (PI))))) (* -1/6 (* x (* y (cos (* 1/2 (PI)))))))))))))
#s(approx (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) #s(hole binary64 (sin (* 1/2 (PI)))))
#s(approx (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* y (cos (* 1/2 (PI)))))))
#s(approx (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* y (+ (cos (* 1/2 (PI))) (* -1/2 (* y (sin (* 1/2 (PI))))))))))
#s(approx (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* y (+ (cos (* 1/2 (PI))) (* y (+ (* -1/2 (sin (* 1/2 (PI)))) (* -1/6 (* y (cos (* 1/2 (PI))))))))))))
#s(approx (sin y) #s(hole binary64 y))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))))
#s(approx (* (cos y) (sin (* (PI) 1/2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* -1/2 (* (pow y 2) (sin (* 1/2 (PI))))))))
#s(approx (* (cos y) (sin (* (PI) 1/2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* (pow y 2) (+ (* -1/2 (sin (* 1/2 (PI)))) (* 1/24 (* (pow y 2) (sin (* 1/2 (PI))))))))))
#s(approx (* (cos y) (sin (* (PI) 1/2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* (pow y 2) (+ (* -1/2 (sin (* 1/2 (PI)))) (* (pow y 2) (+ (* -1/720 (* (pow y 2) (sin (* 1/2 (PI))))) (* 1/24 (sin (* 1/2 (PI)))))))))))
#s(approx (cos y) #s(hole binary64 1))
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2)))))
#s(approx (* z (sin y)) #s(hole binary64 (* y z)))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* -1/6 (* (pow y 2) z))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* 1/120 (* (pow y 2) z))))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* (pow y 2) (+ (* -1/5040 (* (pow y 2) z)) (* 1/120 z)))))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* -1/2 (* x y)) z)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/2 x) (* 1/6 (* y z)))) z)))))
#s(approx (neg y) #s(hole binary64 (* -1 y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ x (* y (+ (* -1 z) (* -1/2 (* x y)))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ x (* y (+ (* -1 z) (* y (+ (* -1/2 x) (* 1/6 (* y z)))))))))
#s(approx (* (* (* y y) (* z y)) 1/6) #s(hole binary64 (* 1/6 (* (pow y 3) z))))
#s(approx (* (* y y) (* z y)) #s(hole binary64 (* (pow y 3) z)))
#s(approx (* y y) #s(hole binary64 (pow y 2)))
#s(approx (* (- (* (* y (* z y)) 1/6) z) y) #s(hole binary64 (* y (+ (* -1 z) (* 1/6 (* (pow y 2) z))))))
#s(approx (- (* (* y (* z y)) 1/6) z) #s(hole binary64 (* -1 z)))
#s(approx (- (* (* y (* z y)) 1/6) z) #s(hole binary64 (- (* 1/6 (* (pow y 2) z)) z)))
#s(approx (* (* y (* z y)) 1/6) #s(hole binary64 (* 1/6 (* (pow y 2) z))))
#s(approx (* y (* z y)) #s(hole binary64 (* (pow y 2) z)))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* -1/2 (* x (pow y 2))))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* 1/24 (* x (pow y 2))))))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* (pow y 2) (+ (* -1/720 (* x (pow y 2))) (* 1/24 x))))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 z))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (+ z (* -1/6 (* (pow y 2) z)))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/6 z) (* 1/120 (* (pow y 2) z)))))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* -1/6 z)))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (+ (* -1/6 z) (* 1/120 (* (pow y 2) z)))))
#s(approx (* (* (* y y) 1/120) z) #s(hole binary64 (* 1/120 (* (pow y 2) z))))
#s(approx (* (* y y) 1/120) #s(hole binary64 (* 1/120 (pow y 2))))
#s(approx (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) #s(hole binary64 (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y)))))
#s(approx (sin y) #s(hole binary64 (sin y)))
#s(approx (* (cos y) (sin (* (PI) 1/2))) #s(hole binary64 (* (cos y) (sin (* 1/2 (PI))))))
#s(approx (cos y) #s(hole binary64 (cos y)))
#s(approx (* z (sin y)) #s(hole binary64 (* z (sin y))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (* y (+ (* -1 z) (/ x y)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (+ (* -1/2 (/ x y)) (* 1/6 z)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (+ (* -1 (/ z (pow y 2))) (+ (* -1/2 (/ x y)) (* 1/6 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (- (+ (* -1/2 (/ x y)) (+ (* 1/6 z) (/ x (pow y 3)))) (/ z (pow y 2))))))
#s(approx (* (- (* (* y (* z y)) 1/6) z) y) #s(hole binary64 (* (pow y 3) (+ (* -1 (/ z (pow y 2))) (* 1/6 z)))))
#s(approx (- (* (* y (* z y)) 1/6) z) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ z (pow y 2))) (* 1/6 z)))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* 1/120 (* (pow y 5) z))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* (pow y 5) (+ (* -1/6 (/ z (pow y 2))) (* 1/120 z)))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* (pow y 5) (+ (* -1/6 (/ z (pow y 2))) (+ (* 1/120 z) (/ z (pow y 4)))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* 1/120 (* (pow y 4) z))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* (pow y 4) (+ (* -1/6 (/ z (pow y 2))) (* 1/120 z)))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* (pow y 4) (+ (* -1/6 (/ z (pow y 2))) (+ (* 1/120 z) (/ z (pow y 4)))))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* (pow y 2) (+ (* -1/6 (/ z (pow y 2))) (* 1/120 z)))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (* -1 (* y (+ z (* -1 (/ x y)))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1/6 z) (* 1/2 (/ x y)))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1 (/ (+ (* -1 (/ z y)) (* -1/2 x)) y)) (* -1/6 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1 (/ (+ (* -1 (/ (+ z (* -1 (/ x y))) y)) (* -1/2 x)) y)) (* -1/6 z))))))
#s(approx (* (- (* (* y (* z y)) 1/6) z) y) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1/6 z) (/ z (pow y 2)))))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* -1 (* (pow y 5) (+ (* -1/120 z) (* 1/6 (/ z (pow y 2))))))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* -1 (* (pow y 5) (+ (* -1 (/ z (pow y 4))) (+ (* -1/120 z) (* 1/6 (/ z (pow y 2)))))))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (+ (* -1 (* z (sin y))) (* x (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y)))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ (* -1 (* z (sin y))) (* x (cos y)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ x (+ (* -1/2 (* x (pow y 2))) (* y (* z (- (* 1/6 (pow y 2)) 1)))))))
#s(approx (* (- (* (* y (* z y)) 1/6) z) y) #s(hole binary64 (* y (* z (- (* 1/6 (pow y 2)) 1)))))
#s(approx (- (* (* y (* z y)) 1/6) z) #s(hole binary64 (* z (- (* 1/6 (pow y 2)) 1))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* y (* z (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* z (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* z (- (* 1/120 (pow y 2)) 1/6))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (* z (- (/ (* x (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y)))) z) (sin y)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* z (- (/ (* x (cos y)) z) (sin y)))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (* z (+ (* -1 y) (/ x z)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* z (+ (* -1/2 (/ (* x (pow y 2)) z)) (+ (* y (- (* 1/6 (pow y 2)) 1)) (/ x z))))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (* -1 (* z (- (* -1 (/ (* x (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y)))) z)) (* -1 (sin y)))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* -1 (* z (- (* -1 (/ (* x (cos y)) z)) (* -1 (sin y)))))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (* -1 (* z (+ y (* -1 (/ x z)))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* y (* z (+ 1 (* -1/6 (pow y 2))))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* z (+ (* -1 (/ (+ x (* -1/2 (* x (pow y 2)))) z)) (* y (+ 1 (* -1/6 (pow y 2)))))))))
#s(approx (- (* (* y (* z y)) 1/6) z) #s(hole binary64 (* -1 (* z (+ 1 (* -1/6 (pow y 2)))))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* -1 (* y (* z (- (* (pow y 2) (+ 1/6 (* -1/120 (pow y 2)))) 1))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* -1 (* z (- (* (pow y 2) (+ 1/6 (* -1/120 (pow y 2)))) 1)))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* -1 (* z (+ 1/6 (* -1/120 (pow y 2)))))))
Calls

9 calls:

TimeVariablePointExpression
9.0ms
x
@0
((- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) (sin y) y (cos (* (PI) 1/2)) (* (PI) 1/2) (PI) 1/2 (* (cos y) (sin (* (PI) 1/2))) (cos y) (sin (* (PI) 1/2)) (* z (sin y)) z (- (* x (cos y)) (* z (sin y))) (+ (* (neg y) z) x) (neg y) (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (* (* y y) (* z y)) 1/6) (* (* y y) (* z y)) (* y y) (* z y) 1/6 (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (- (* (* y (* z y)) 1/6) z) y) (- (* (* y (* z y)) 1/6) z) (* (* y (* z y)) 1/6) (* y (* z y)) (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) 1 (* z (sin y)) (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* (* (* y y) 1/120) z) (* (* y y) 1/120) 1/120)
8.0ms
z
@0
((- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) (sin y) y (cos (* (PI) 1/2)) (* (PI) 1/2) (PI) 1/2 (* (cos y) (sin (* (PI) 1/2))) (cos y) (sin (* (PI) 1/2)) (* z (sin y)) z (- (* x (cos y)) (* z (sin y))) (+ (* (neg y) z) x) (neg y) (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (* (* y y) (* z y)) 1/6) (* (* y y) (* z y)) (* y y) (* z y) 1/6 (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (- (* (* y (* z y)) 1/6) z) y) (- (* (* y (* z y)) 1/6) z) (* (* y (* z y)) 1/6) (* y (* z y)) (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) 1 (* z (sin y)) (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* (* (* y y) 1/120) z) (* (* y y) 1/120) 1/120)
6.0ms
x
@-inf
((- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) (sin y) y (cos (* (PI) 1/2)) (* (PI) 1/2) (PI) 1/2 (* (cos y) (sin (* (PI) 1/2))) (cos y) (sin (* (PI) 1/2)) (* z (sin y)) z (- (* x (cos y)) (* z (sin y))) (+ (* (neg y) z) x) (neg y) (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (* (* y y) (* z y)) 1/6) (* (* y y) (* z y)) (* y y) (* z y) 1/6 (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (- (* (* y (* z y)) 1/6) z) y) (- (* (* y (* z y)) 1/6) z) (* (* y (* z y)) 1/6) (* y (* z y)) (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) 1 (* z (sin y)) (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* (* (* y y) 1/120) z) (* (* y y) 1/120) 1/120)
5.0ms
y
@-inf
((- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) (sin y) y (cos (* (PI) 1/2)) (* (PI) 1/2) (PI) 1/2 (* (cos y) (sin (* (PI) 1/2))) (cos y) (sin (* (PI) 1/2)) (* z (sin y)) z (- (* x (cos y)) (* z (sin y))) (+ (* (neg y) z) x) (neg y) (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (* (* y y) (* z y)) 1/6) (* (* y y) (* z y)) (* y y) (* z y) 1/6 (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (- (* (* y (* z y)) 1/6) z) y) (- (* (* y (* z y)) 1/6) z) (* (* y (* z y)) 1/6) (* y (* z y)) (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) 1 (* z (sin y)) (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* (* (* y y) 1/120) z) (* (* y y) 1/120) 1/120)
5.0ms
y
@inf
((- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) (sin y) y (cos (* (PI) 1/2)) (* (PI) 1/2) (PI) 1/2 (* (cos y) (sin (* (PI) 1/2))) (cos y) (sin (* (PI) 1/2)) (* z (sin y)) z (- (* x (cos y)) (* z (sin y))) (+ (* (neg y) z) x) (neg y) (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (* (* y y) (* z y)) 1/6) (* (* y y) (* z y)) (* y y) (* z y) 1/6 (- (* x (cos y)) (* z (sin y))) (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (* (- (* (* y (* z y)) 1/6) z) y) (- (* (* y (* z y)) 1/6) z) (* (* y (* z y)) 1/6) (* y (* z y)) (- (* x (cos y)) (* z (sin y))) (* x (cos y)) (cos y) 1 (* z (sin y)) (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* (* (* y y) 1/120) z) (* (* y y) 1/120) 1/120)

rewrite330.0ms (9.1%)

Memory
-57.3MiB live, 301.1MiB allocated; 117ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05303556
05793179
134153179
098982954
1331832954
Stop Event
saturated
node-limit
iter-limit
Counts
157 → 272
Calls
Call 1
Inputs
(-.f64 (*.f64 x (fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) (*.f64 z (sin.f64 y)))
(*.f64 x (fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
x
(fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(sin.f64 y)
y
(cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))
(*.f64 (PI.f64) #s(literal 1/2 binary64))
(PI.f64)
#s(literal 1/2 binary64)
(*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 y)
(sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))
(*.f64 z (sin.f64 y))
z
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (neg.f64 y) z x))
(fma.f64 (neg.f64 y) z x)
(neg.f64 y)
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (*.f64 z y)) #s(literal 1/6 binary64))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (*.f64 z y)) #s(literal 1/6 binary64)))
(*.f64 (*.f64 (*.f64 y y) (*.f64 z y)) #s(literal 1/6 binary64))
(*.f64 (*.f64 y y) (*.f64 z y))
(*.f64 y y)
(*.f64 z y)
#s(literal 1/6 binary64)
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64)) z) y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64)) z) y))
(*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64)) z) y)
(-.f64 (*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64)) z)
(*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64))
(*.f64 y (*.f64 z y))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)))
(*.f64 x #s(approx (cos y) #s(literal 1 binary64)))
#s(approx (cos y) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y))
(*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)
(fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z)
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z))
(*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)
(*.f64 (*.f64 y y) #s(literal 1/120 binary64))
#s(literal 1/120 binary64)
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (* -1 (* z (sin y)))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (- (* x (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y)))) (* z (sin y)))))
#s(approx (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) #s(hole binary64 (* x (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y))))))
#s(approx x #s(hole binary64 x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (- (* x (cos y)) (* z (sin y)))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (* -1 (* y z))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (+ x (* -1 (* y z)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* y (- (* 1/6 (* (pow y 2) z)) z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ (* x (+ 1 (* -1/2 (pow y 2)))) (* y (- (* 1/6 (* (pow y 2) z)) z)))))
#s(approx (* x (cos y)) #s(hole binary64 (* x (cos y))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (* x (+ (* -1 (/ (* z (sin y)) x)) (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y)))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* x (+ (cos y) (* -1 (/ (* z (sin y)) x))))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (* x (+ 1 (* -1 (/ (* y z) x))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* x (+ 1 (* -1/2 (pow y 2))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* x (+ 1 (+ (* -1/2 (pow y 2)) (/ (* y (- (* 1/6 (* (pow y 2) z)) z)) x))))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (* -1 (* x (+ (* -1 (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y)))) (/ (* z (sin y)) x))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* -1 (* x (+ (* -1 (cos y)) (/ (* z (sin y)) x))))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (* -1 (* x (- (/ (* y z) x) 1)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* x (- (* 1/2 (pow y 2)) 1)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* x (- (+ (* -1 (/ (* y (- (* 1/6 (* (pow y 2) z)) z)) x)) (* 1/2 (pow y 2))) 1)))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (* x (sin (* 1/2 (PI))))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (+ (* x (sin (* 1/2 (PI)))) (* y (- (* x (cos (* 1/2 (PI)))) z)))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (+ (* x (sin (* 1/2 (PI)))) (* y (- (+ (* -1/2 (* x (* y (sin (* 1/2 (PI)))))) (* x (cos (* 1/2 (PI))))) z)))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (+ (* x (sin (* 1/2 (PI)))) (* y (- (+ (* x (cos (* 1/2 (PI)))) (* y (+ (* -1/2 (* x (sin (* 1/2 (PI))))) (* y (- (* -1/6 (* x (cos (* 1/2 (PI))))) (* -1/6 z)))))) z)))))
#s(approx (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) #s(hole binary64 (+ (* x (sin (* 1/2 (PI)))) (* x (* y (cos (* 1/2 (PI))))))))
#s(approx (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) #s(hole binary64 (+ (* x (sin (* 1/2 (PI)))) (* y (+ (* -1/2 (* x (* y (sin (* 1/2 (PI)))))) (* x (cos (* 1/2 (PI)))))))))
#s(approx (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) #s(hole binary64 (+ (* x (sin (* 1/2 (PI)))) (* y (+ (* x (cos (* 1/2 (PI)))) (* y (+ (* -1/2 (* x (sin (* 1/2 (PI))))) (* -1/6 (* x (* y (cos (* 1/2 (PI)))))))))))))
#s(approx (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) #s(hole binary64 (sin (* 1/2 (PI)))))
#s(approx (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* y (cos (* 1/2 (PI)))))))
#s(approx (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* y (+ (cos (* 1/2 (PI))) (* -1/2 (* y (sin (* 1/2 (PI))))))))))
#s(approx (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* y (+ (cos (* 1/2 (PI))) (* y (+ (* -1/2 (sin (* 1/2 (PI)))) (* -1/6 (* y (cos (* 1/2 (PI))))))))))))
#s(approx (sin y) #s(hole binary64 y))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* -1/6 (pow y 2))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))
#s(approx (sin y) #s(hole binary64 (* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))))
#s(approx (* (cos y) (sin (* (PI) 1/2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* -1/2 (* (pow y 2) (sin (* 1/2 (PI))))))))
#s(approx (* (cos y) (sin (* (PI) 1/2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* (pow y 2) (+ (* -1/2 (sin (* 1/2 (PI)))) (* 1/24 (* (pow y 2) (sin (* 1/2 (PI))))))))))
#s(approx (* (cos y) (sin (* (PI) 1/2))) #s(hole binary64 (+ (sin (* 1/2 (PI))) (* (pow y 2) (+ (* -1/2 (sin (* 1/2 (PI)))) (* (pow y 2) (+ (* -1/720 (* (pow y 2) (sin (* 1/2 (PI))))) (* 1/24 (sin (* 1/2 (PI)))))))))))
#s(approx (cos y) #s(hole binary64 1))
#s(approx (cos y) #s(hole binary64 (+ 1 (* -1/2 (pow y 2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* 1/24 (pow y 2)) 1/2)))))
#s(approx (cos y) #s(hole binary64 (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/24 (* -1/720 (pow y 2)))) 1/2)))))
#s(approx (* z (sin y)) #s(hole binary64 (* y z)))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* -1/6 (* (pow y 2) z))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* 1/120 (* (pow y 2) z))))))))
#s(approx (* z (sin y)) #s(hole binary64 (* y (+ z (* (pow y 2) (+ (* -1/6 z) (* (pow y 2) (+ (* -1/5040 (* (pow y 2) z)) (* 1/120 z)))))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* -1/2 (* x y)) z)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ x (* y (- (* y (+ (* -1/2 x) (* 1/6 (* y z)))) z)))))
#s(approx (neg y) #s(hole binary64 (* -1 y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ x (* y (+ (* -1 z) (* -1/2 (* x y)))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ x (* y (+ (* -1 z) (* y (+ (* -1/2 x) (* 1/6 (* y z)))))))))
#s(approx (* (* (* y y) (* z y)) 1/6) #s(hole binary64 (* 1/6 (* (pow y 3) z))))
#s(approx (* (* y y) (* z y)) #s(hole binary64 (* (pow y 3) z)))
#s(approx (* y y) #s(hole binary64 (pow y 2)))
#s(approx (* (- (* (* y (* z y)) 1/6) z) y) #s(hole binary64 (* y (+ (* -1 z) (* 1/6 (* (pow y 2) z))))))
#s(approx (- (* (* y (* z y)) 1/6) z) #s(hole binary64 (* -1 z)))
#s(approx (- (* (* y (* z y)) 1/6) z) #s(hole binary64 (- (* 1/6 (* (pow y 2) z)) z)))
#s(approx (* (* y (* z y)) 1/6) #s(hole binary64 (* 1/6 (* (pow y 2) z))))
#s(approx (* y (* z y)) #s(hole binary64 (* (pow y 2) z)))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* -1/2 (* x (pow y 2))))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* 1/24 (* x (pow y 2))))))))
#s(approx (* x (cos y)) #s(hole binary64 (+ x (* (pow y 2) (+ (* -1/2 x) (* (pow y 2) (+ (* -1/720 (* x (pow y 2))) (* 1/24 x))))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 z))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (+ z (* -1/6 (* (pow y 2) z)))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (+ z (* (pow y 2) (+ (* -1/6 z) (* 1/120 (* (pow y 2) z)))))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* -1/6 z)))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (+ (* -1/6 z) (* 1/120 (* (pow y 2) z)))))
#s(approx (* (* (* y y) 1/120) z) #s(hole binary64 (* 1/120 (* (pow y 2) z))))
#s(approx (* (* y y) 1/120) #s(hole binary64 (* 1/120 (pow y 2))))
#s(approx (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) #s(hole binary64 (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y)))))
#s(approx (sin y) #s(hole binary64 (sin y)))
#s(approx (* (cos y) (sin (* (PI) 1/2))) #s(hole binary64 (* (cos y) (sin (* 1/2 (PI))))))
#s(approx (cos y) #s(hole binary64 (cos y)))
#s(approx (* z (sin y)) #s(hole binary64 (* z (sin y))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (* y (+ (* -1 z) (/ x y)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (+ (* -1/2 (/ x y)) (* 1/6 z)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (+ (* -1 (/ z (pow y 2))) (+ (* -1/2 (/ x y)) (* 1/6 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* (pow y 3) (- (+ (* -1/2 (/ x y)) (+ (* 1/6 z) (/ x (pow y 3)))) (/ z (pow y 2))))))
#s(approx (* (- (* (* y (* z y)) 1/6) z) y) #s(hole binary64 (* (pow y 3) (+ (* -1 (/ z (pow y 2))) (* 1/6 z)))))
#s(approx (- (* (* y (* z y)) 1/6) z) #s(hole binary64 (* (pow y 2) (+ (* -1 (/ z (pow y 2))) (* 1/6 z)))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* 1/120 (* (pow y 5) z))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* (pow y 5) (+ (* -1/6 (/ z (pow y 2))) (* 1/120 z)))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* (pow y 5) (+ (* -1/6 (/ z (pow y 2))) (+ (* 1/120 z) (/ z (pow y 4)))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* 1/120 (* (pow y 4) z))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* (pow y 4) (+ (* -1/6 (/ z (pow y 2))) (* 1/120 z)))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* (pow y 4) (+ (* -1/6 (/ z (pow y 2))) (+ (* 1/120 z) (/ z (pow y 4)))))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* (pow y 2) (+ (* -1/6 (/ z (pow y 2))) (* 1/120 z)))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (* -1 (* y (+ z (* -1 (/ x y)))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1/6 z) (* 1/2 (/ x y)))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1 (/ (+ (* -1 (/ z y)) (* -1/2 x)) y)) (* -1/6 z))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1 (/ (+ (* -1 (/ (+ z (* -1 (/ x y))) y)) (* -1/2 x)) y)) (* -1/6 z))))))
#s(approx (* (- (* (* y (* z y)) 1/6) z) y) #s(hole binary64 (* -1 (* (pow y 3) (+ (* -1/6 z) (/ z (pow y 2)))))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* -1 (* (pow y 5) (+ (* -1/120 z) (* 1/6 (/ z (pow y 2))))))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* -1 (* (pow y 5) (+ (* -1 (/ z (pow y 4))) (+ (* -1/120 z) (* 1/6 (/ z (pow y 2)))))))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (+ (* -1 (* z (sin y))) (* x (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y)))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (+ (* -1 (* z (sin y))) (* x (cos y)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (+ x (+ (* -1/2 (* x (pow y 2))) (* y (* z (- (* 1/6 (pow y 2)) 1)))))))
#s(approx (* (- (* (* y (* z y)) 1/6) z) y) #s(hole binary64 (* y (* z (- (* 1/6 (pow y 2)) 1)))))
#s(approx (- (* (* y (* z y)) 1/6) z) #s(hole binary64 (* z (- (* 1/6 (pow y 2)) 1))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* y (* z (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* z (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* z (- (* 1/120 (pow y 2)) 1/6))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (* z (- (/ (* x (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y)))) z) (sin y)))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* z (- (/ (* x (cos y)) z) (sin y)))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (* z (+ (* -1 y) (/ x z)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* z (+ (* -1/2 (/ (* x (pow y 2)) z)) (+ (* y (- (* 1/6 (pow y 2)) 1)) (/ x z))))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) #s(hole binary64 (* -1 (* z (- (* -1 (/ (* x (+ (* (cos y) (sin (* 1/2 (PI)))) (* (cos (* 1/2 (PI))) (sin y)))) z)) (* -1 (sin y)))))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(hole binary64 (* -1 (* z (- (* -1 (/ (* x (cos y)) z)) (* -1 (sin y)))))))
#s(approx (+ (* (neg y) z) x) #s(hole binary64 (* -1 (* z (+ y (* -1 (/ x z)))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* y (* z (+ 1 (* -1/6 (pow y 2))))))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) #s(hole binary64 (* -1 (* z (+ (* -1 (/ (+ x (* -1/2 (* x (pow y 2)))) z)) (* y (+ 1 (* -1/6 (pow y 2)))))))))
#s(approx (- (* (* y (* z y)) 1/6) z) #s(hole binary64 (* -1 (* z (+ 1 (* -1/6 (pow y 2)))))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) #s(hole binary64 (* -1 (* y (* z (- (* (pow y 2) (+ 1/6 (* -1/120 (pow y 2)))) 1))))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) #s(hole binary64 (* -1 (* z (- (* (pow y 2) (+ 1/6 (* -1/120 (pow y 2)))) 1)))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) #s(hole binary64 (* -1 (* z (+ 1/6 (* -1/120 (pow y 2)))))))
Outputs
(neg.f64 (-.f64 (*.f64 (sin.f64 y) z) (*.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) x)))
(fma.f64 (neg.f64 z) (sin.f64 y) (*.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) x))
(fma.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) x (*.f64 (neg.f64 z) (sin.f64 y)))
(fma.f64 #s(literal -1 binary64) (*.f64 (sin.f64 y) z) (*.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) x))
(fma.f64 (*.f64 (sin.f64 y) z) #s(literal -1 binary64) (*.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) x))
(fma.f64 x (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) (*.f64 (neg.f64 z) (sin.f64 y)))
(-.f64 (*.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) x) (*.f64 (sin.f64 y) z))
(-.f64 (*.f64 (neg.f64 z) (sin.f64 y)) (*.f64 (neg.f64 x) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y))))
(-.f64 (*.f64 (neg.f64 z) (sin.f64 y)) (neg.f64 (*.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) x)))
(+.f64 (*.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) x) (*.f64 (neg.f64 z) (sin.f64 y)))
(+.f64 (*.f64 (neg.f64 z) (sin.f64 y)) (*.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) x))
(*.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) x)
(*.f64 x (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)))
(fma.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y)) x (*.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)) x))
(fma.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)) x (*.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y)) x))
(fma.f64 x (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y)) (*.f64 x (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y))))
(fma.f64 x (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)) (*.f64 x (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y))))
(+.f64 (*.f64 x (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y))) (*.f64 x (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y))))
(+.f64 (*.f64 x (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y))) (*.f64 x (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y))))
(+.f64 (*.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y)) x) (*.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)) x))
(+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)) x) (*.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y)) x))
x
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y))
(sin.f64 (+.f64 y (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)))
(fma.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y) (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y)))
(fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)))
(fma.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y)))
(-.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y)) (*.f64 (neg.f64 (cos.f64 y)) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(-.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y)) (neg.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y))))
(-.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)) (*.f64 (neg.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (sin.f64 y)))
(-.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)) (neg.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y))))
(+.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y)) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)))
(+.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)) (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y)))
(sin.f64 y)
y
(sin.f64 (+.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(cos.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))
(+.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(*.f64 (PI.f64) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/2 binary64) (PI.f64))
(sqrt.f64 (*.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(fabs.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(fabs.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))
(log.f64 (pow.f64 (exp.f64 (PI.f64)) #s(literal 1/2 binary64)))
(PI.f64)
#s(literal 1/2 binary64)
(*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y))
(*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(/.f64 (-.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (+.f64 y (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (+.f64 y (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 y (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (cos.f64 (+.f64 (+.f64 y (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (fabs.f64 y))) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (fabs.f64 y)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) (neg.f64 y))) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (neg.f64 y)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) y)) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y))) #s(literal 2 binary64))
(sin.f64 (+.f64 (fabs.f64 y) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 y) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 y (/.f64 (PI.f64) #s(literal 2 binary64))))
(fma.f64 (sin.f64 y) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (fabs.f64 y)))
(cos.f64 (neg.f64 (neg.f64 y)))
(cos.f64 (fabs.f64 (fabs.f64 y)))
(cos.f64 (fabs.f64 y))
(cos.f64 (neg.f64 y))
(cos.f64 y)
(+.f64 (*.f64 (sin.f64 y) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 y) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))
(*.f64 (sin.f64 y) z)
(*.f64 z (sin.f64 y))
z
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (neg.f64 y) z x))
(fma.f64 (*.f64 z y) #s(literal -1 binary64) x)
(fma.f64 #s(literal -1 binary64) (*.f64 z y) x)
(fma.f64 (neg.f64 y) z x)
(fma.f64 z (neg.f64 y) x)
(-.f64 (*.f64 (neg.f64 y) z) (neg.f64 x))
(-.f64 x (*.f64 #s(literal 1 binary64) (*.f64 z y)))
(-.f64 x (neg.f64 (*.f64 (neg.f64 y) z)))
(+.f64 (*.f64 (neg.f64 y) z) x)
(+.f64 x (*.f64 (neg.f64 y) z))
(*.f64 #s(literal -1 binary64) y)
(*.f64 y #s(literal -1 binary64))
(neg.f64 y)
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) z) y) #s(literal 1/6 binary64))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) z) y) #s(literal 1/6 binary64)))
(*.f64 (*.f64 (*.f64 (*.f64 y y) z) y) #s(literal 1/6 binary64))
(*.f64 (*.f64 y y) (*.f64 (*.f64 #s(literal 1/6 binary64) y) z))
(*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 (*.f64 y y) z) y))
(*.f64 (*.f64 (*.f64 y y) z) y)
(*.f64 (*.f64 y y) (*.f64 z y))
(*.f64 (*.f64 z y) (*.f64 y y))
(*.f64 y (*.f64 (*.f64 z y) y))
(*.f64 (neg.f64 (fabs.f64 y)) (neg.f64 (fabs.f64 y)))
(*.f64 (neg.f64 (neg.f64 y)) (neg.f64 (neg.f64 y)))
(*.f64 (fabs.f64 (fabs.f64 y)) (fabs.f64 (fabs.f64 y)))
(*.f64 (fabs.f64 y) (fabs.f64 y))
(*.f64 (neg.f64 y) (neg.f64 y))
(*.f64 y y)
(pow.f64 (neg.f64 (fabs.f64 y)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 y)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 (fabs.f64 y)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 y) #s(literal 2 binary64))
(pow.f64 (neg.f64 y) #s(literal 2 binary64))
(pow.f64 y #s(literal 2 binary64))
(sqrt.f64 (*.f64 (*.f64 y y) (*.f64 y y)))
(fabs.f64 (neg.f64 (*.f64 y y)))
(fabs.f64 (*.f64 y y))
(*.f64 z y)
(*.f64 y z)
#s(literal 1/6 binary64)
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 z y) y) #s(literal 1/6 binary64)) z) y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 z y) y) #s(literal 1/6 binary64)) z) y))
(*.f64 (-.f64 (*.f64 (*.f64 (*.f64 z y) y) #s(literal 1/6 binary64)) z) y)
(*.f64 y (-.f64 (*.f64 (*.f64 (*.f64 z y) y) #s(literal 1/6 binary64)) z))
(neg.f64 (-.f64 z (*.f64 (*.f64 (*.f64 z y) y) #s(literal 1/6 binary64))))
(fma.f64 (*.f64 (*.f64 z y) y) #s(literal 1/6 binary64) (neg.f64 z))
(fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 z y) y) (neg.f64 z))
(fma.f64 y (*.f64 (*.f64 #s(literal 1/6 binary64) y) z) (neg.f64 z))
(-.f64 (*.f64 (*.f64 (*.f64 z y) y) #s(literal 1/6 binary64)) z)
(+.f64 (*.f64 (*.f64 (*.f64 z y) y) #s(literal 1/6 binary64)) (neg.f64 z))
(*.f64 (*.f64 (*.f64 z y) y) #s(literal 1/6 binary64))
(*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 z y) y))
(*.f64 y (*.f64 (*.f64 #s(literal 1/6 binary64) y) z))
(*.f64 (*.f64 z y) y)
(*.f64 y (*.f64 z y))
(neg.f64 (-.f64 #s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 y y) #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) z) y)) (*.f64 #s(approx (cos y) #s(literal 1 binary64)) x)))
(fma.f64 #s(approx (cos y) #s(literal 1 binary64)) x (neg.f64 #s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 y y) #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) z) y))))
(fma.f64 x #s(approx (cos y) #s(literal 1 binary64)) (neg.f64 #s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 y y) #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) z) y))))
(-.f64 (*.f64 #s(approx (cos y) #s(literal 1 binary64)) x) #s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 y y) #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) z) y)))
(+.f64 (*.f64 #s(approx (cos y) #s(literal 1 binary64)) x) (neg.f64 #s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 y y) #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) z) y))))
(*.f64 #s(approx (cos y) #s(literal 1 binary64)) x)
(*.f64 x #s(approx (cos y) #s(literal 1 binary64)))
#s(approx (cos y) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 y y) #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) z) y))
(*.f64 (fma.f64 (*.f64 y y) #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) z) y)
(*.f64 y (fma.f64 (*.f64 y y) #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) z))
(fma.f64 (*.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) y) y z)
(fma.f64 (*.f64 y y) #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) z)
(fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z)
(-.f64 (*.f64 (*.f64 y y) #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z))) (neg.f64 z))
(+.f64 (*.f64 (*.f64 y y) #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z))) z)
(+.f64 z (*.f64 (*.f64 y y) #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z))
(*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)
(*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/120 binary64))
(*.f64 (*.f64 y y) (*.f64 #s(literal 1/120 binary64) z))
(*.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 y y) z))
(*.f64 z (*.f64 (*.f64 y y) #s(literal 1/120 binary64)))
(*.f64 (*.f64 #s(literal 1/120 binary64) y) y)
(*.f64 (*.f64 y y) #s(literal 1/120 binary64))
(*.f64 #s(literal 1/120 binary64) (*.f64 y y))
(*.f64 y (*.f64 y #s(literal 1/120 binary64)))
#s(literal 1/120 binary64)
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (-.f64 (*.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) x) (*.f64 (sin.f64 y) z)))
#s(approx (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (*.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) x))
#s(approx x x)
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 (*.f64 (cos.f64 y) x) (*.f64 (sin.f64 y) z)))
#s(approx (+ (* (neg y) z) x) (*.f64 (neg.f64 y) z))
#s(approx (+ (* (neg y) z) x) (fma.f64 (neg.f64 y) z x))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y)))
#s(approx (* x (cos y)) (*.f64 (cos.f64 y) x))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (+.f64 (/.f64 (*.f64 (neg.f64 z) (sin.f64 y)) x) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y))) x))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (+.f64 (/.f64 (*.f64 (neg.f64 z) (sin.f64 y)) x) (cos.f64 y)) x))
#s(approx (+ (* (neg y) z) x) (*.f64 (+.f64 (/.f64 (*.f64 (neg.f64 y) z) x) #s(literal 1 binary64)) x))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (+.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) (/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y) x)) #s(literal 1 binary64)) x))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (neg.f64 (*.f64 (fma.f64 z (/.f64 (sin.f64 y) x) (neg.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)))) x)))
#s(approx (- (* x (cos y)) (* z (sin y))) (neg.f64 (*.f64 (fma.f64 z (/.f64 (sin.f64 y) x) (neg.f64 (cos.f64 y))) x)))
#s(approx (+ (* (neg y) z) x) (neg.f64 (*.f64 (fma.f64 y (/.f64 z x) #s(literal -1 binary64)) x)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (neg.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) #s(literal -1 binary64)) x)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (neg.f64 (*.f64 (-.f64 (fma.f64 (*.f64 y y) #s(literal 1/2 binary64) (neg.f64 (/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y) x))) #s(literal 1 binary64)) x)))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x) z) y (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x)))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (fma.f64 y (fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) y) x) #s(literal -1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x) z)) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x)))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (fma.f64 (-.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x) z)) y (*.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x) #s(literal -1/2 binary64))) y (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x)) z) y (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x)))
#s(approx (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (*.f64 x (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) y (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
#s(approx (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (fma.f64 y (fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) y) x) #s(literal -1/2 binary64) (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x)) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x)))
#s(approx (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) x) (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) y) (*.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x) #s(literal -1/2 binary64))) y (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x)) y (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x)))
#s(approx (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))
#s(approx (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) (fma.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) y (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
#s(approx (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) (fma.f64 y (fma.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) y) #s(literal -1/2 binary64) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
#s(approx (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) (fma.f64 y (fma.f64 y (fma.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) y) #s(literal -1/6 binary64) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) #s(literal -1/2 binary64))) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
#s(approx (sin y) y)
#s(approx (sin y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y))
#s(approx (sin y) (*.f64 (fma.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y))
#s(approx (sin y) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) y))
#s(approx (* (cos y) (sin (* (PI) 1/2))) (fma.f64 (*.f64 (*.f64 y y) #s(literal -1/2 binary64)) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
#s(approx (* (cos y) (sin (* (PI) 1/2))) (fma.f64 (fma.f64 (*.f64 (*.f64 y y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))) #s(literal 1/24 binary64) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) #s(literal -1/2 binary64))) (*.f64 y y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
#s(approx (* (cos y) (sin (* (PI) 1/2))) (fma.f64 (fma.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) #s(literal -1/2 binary64) (*.f64 (fma.f64 #s(literal 1/24 binary64) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (*.f64 #s(literal -1/720 binary64) (*.f64 y y)) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))) (*.f64 y y))) (*.f64 y y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
#s(approx (cos y) #s(literal 1 binary64))
#s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos y) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 y y) #s(literal -1/2 binary64)) (*.f64 y y) #s(literal 1 binary64)))
#s(approx (cos y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 y y) #s(literal 1/24 binary64)) (*.f64 y y) #s(literal -1/2 binary64)) (*.f64 y y) #s(literal 1 binary64)))
#s(approx (* z (sin y)) (*.f64 z y))
#s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) z z) y))
#s(approx (* z (sin y)) (*.f64 (fma.f64 (*.f64 y y) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) z) y))
#s(approx (* z (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 y y) (fma.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) z (*.f64 #s(literal 1/120 binary64) z)) (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
#s(approx (neg y) (neg.f64 y))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (fma.f64 (-.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) z) y x))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 z y) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
#s(approx (* (* (* y y) (* z y)) 1/6) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64)))
#s(approx (* (* y y) (* z y)) (*.f64 (*.f64 (*.f64 y y) y) z))
#s(approx (* y y) (*.f64 y y))
#s(approx (* (- (* (* y (* z y)) 1/6) z) y) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y))
#s(approx (- (* (* y (* z y)) 1/6) z) (neg.f64 z))
#s(approx (- (* (* y (* z y)) 1/6) z) (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z))
#s(approx (* (* y (* z y)) 1/6) (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)))
#s(approx (* y (* z y)) (*.f64 (*.f64 y y) z))
#s(approx (* x (cos y)) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/2 binary64) x))
#s(approx (* x (cos y)) (fma.f64 (fma.f64 (*.f64 (*.f64 y y) x) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) x)) (*.f64 y y) x))
#s(approx (* x (cos y)) (fma.f64 (fma.f64 (*.f64 y y) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) x)) (*.f64 #s(literal -1/2 binary64) x)) (*.f64 y y) x))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) z)
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (fma.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) z z))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (fma.f64 (*.f64 y y) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z) z))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 #s(literal -1/6 binary64) z))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z))
#s(approx (* (* (* y y) 1/120) z) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z))
#s(approx (* (* y y) 1/120) (*.f64 (*.f64 y y) #s(literal 1/120 binary64)))
#s(approx (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2)))) (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)))
#s(approx (sin y) (sin.f64 y))
#s(approx (* (cos y) (sin (* (PI) 1/2))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)))
#s(approx (cos y) (cos.f64 y))
#s(approx (* z (sin y)) (*.f64 (sin.f64 y) z))
#s(approx (+ (* (neg y) z) x) (*.f64 (+.f64 (/.f64 x y) (neg.f64 z)) y))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z)) (*.f64 (*.f64 y y) y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (+.f64 (/.f64 (neg.f64 z) (*.f64 y y)) (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z))) (*.f64 (*.f64 y y) y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (fma.f64 #s(literal 1/6 binary64) z (/.f64 x (*.f64 (*.f64 y y) y)))) (/.f64 z (*.f64 y y))) (*.f64 (*.f64 y y) y)))
#s(approx (* (- (* (* y (* z y)) 1/6) z) y) (*.f64 (fma.f64 #s(literal 1/6 binary64) z (/.f64 (neg.f64 z) (*.f64 y y))) (*.f64 (*.f64 y y) y)))
#s(approx (- (* (* y (* z y)) 1/6) z) (*.f64 (fma.f64 #s(literal 1/6 binary64) z (/.f64 (neg.f64 z) (*.f64 y y))) (*.f64 y y)))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (*.f64 (*.f64 (pow.f64 y #s(literal 5 binary64)) z) #s(literal 1/120 binary64)))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (*.f64 (fma.f64 (/.f64 z (*.f64 y y)) #s(literal -1/6 binary64) (*.f64 #s(literal 1/120 binary64) z)) (pow.f64 y #s(literal 5 binary64))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (*.f64 (fma.f64 (/.f64 z (*.f64 y y)) #s(literal -1/6 binary64) (fma.f64 #s(literal 1/120 binary64) z (*.f64 z (pow.f64 y #s(literal -4 binary64))))) (pow.f64 y #s(literal 5 binary64))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (*.f64 (*.f64 (pow.f64 y #s(literal 4 binary64)) z) #s(literal 1/120 binary64)))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (*.f64 (pow.f64 y #s(literal 4 binary64)) (fma.f64 (/.f64 z (*.f64 y y)) #s(literal -1/6 binary64) (*.f64 #s(literal 1/120 binary64) z))))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (*.f64 (fma.f64 (/.f64 z (*.f64 y y)) #s(literal -1/6 binary64) (fma.f64 #s(literal 1/120 binary64) z (*.f64 z (pow.f64 y #s(literal -4 binary64))))) (pow.f64 y #s(literal 4 binary64))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (fma.f64 (/.f64 z (*.f64 y y)) #s(literal -1/6 binary64) (*.f64 #s(literal 1/120 binary64) z)) (*.f64 y y)))
#s(approx (+ (* (neg y) z) x) (*.f64 (neg.f64 y) (+.f64 (neg.f64 (/.f64 x y)) z)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (neg.f64 y)) (fma.f64 (/.f64 x y) #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) z))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (neg.f64 y)) (fma.f64 #s(literal -1/6 binary64) z (neg.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) x (/.f64 (neg.f64 z) y)) y)))))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (neg.f64 y)) (fma.f64 #s(literal -1/6 binary64) z (neg.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) x (neg.f64 (/.f64 (+.f64 (neg.f64 (/.f64 x y)) z) y))) y)))))
#s(approx (* (- (* (* y (* z y)) 1/6) z) y) (*.f64 (*.f64 (*.f64 y y) (neg.f64 y)) (fma.f64 #s(literal -1/6 binary64) z (/.f64 z (*.f64 y y)))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (neg.f64 (*.f64 (fma.f64 #s(literal -1/120 binary64) z (*.f64 (/.f64 z (*.f64 y y)) #s(literal 1/6 binary64))) (pow.f64 y #s(literal 5 binary64)))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (neg.f64 (*.f64 (+.f64 (neg.f64 (*.f64 z (pow.f64 y #s(literal -4 binary64)))) (fma.f64 #s(literal -1/120 binary64) z (*.f64 (/.f64 z (*.f64 y y)) #s(literal 1/6 binary64)))) (pow.f64 y #s(literal 5 binary64)))))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (-.f64 (*.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) x) (*.f64 (sin.f64 y) z)))
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 (*.f64 (cos.f64 y) x) (*.f64 (sin.f64 y) z)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (+.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z) y (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/2 binary64))) x))
#s(approx (* (- (* (* y (* z y)) 1/6) z) y) (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z) y))
#s(approx (- (* (* y (* z y)) 1/6) z) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (*.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) z) y))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (*.f64 (fma.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)) z))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) z))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (-.f64 (*.f64 x (/.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) z)) (sin.f64 y)) z))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (-.f64 (/.f64 (*.f64 (cos.f64 y) x) z) (sin.f64 y)) z))
#s(approx (+ (* (neg y) z) x) (*.f64 (+.f64 (/.f64 x z) (neg.f64 y)) z))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (/.f64 (*.f64 (*.f64 y y) x) z) #s(literal -1/2 binary64) (fma.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) y (/.f64 x z))) z))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (neg.f64 z) (-.f64 (neg.f64 (*.f64 x (/.f64 (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) y)) z))) (neg.f64 (sin.f64 y)))))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (neg.f64 z) (-.f64 (neg.f64 (/.f64 (*.f64 (cos.f64 y) x) z)) (neg.f64 (sin.f64 y)))))
#s(approx (+ (* (neg y) z) x) (*.f64 (neg.f64 z) (+.f64 (neg.f64 (/.f64 x z)) y)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (neg.f64 y) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) z)))
#s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (neg.f64 z) (fma.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) y (neg.f64 (/.f64 (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/2 binary64) x) z)))))
#s(approx (- (* (* y (* z y)) 1/6) z) (*.f64 (neg.f64 z) (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))))
#s(approx (* (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) y) (*.f64 (neg.f64 y) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 y y) #s(literal 1/6 binary64)) (*.f64 y y) #s(literal -1 binary64)) z)))
#s(approx (+ (* (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (* y y)) z) (*.f64 (neg.f64 z) (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 y y) #s(literal 1/6 binary64)) (*.f64 y y) #s(literal -1 binary64))))
#s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (neg.f64 z) (fma.f64 #s(literal -1/120 binary64) (*.f64 y y) #s(literal 1/6 binary64))))

eval32.0ms (0.9%)

Memory
19.8MiB live, 76.9MiB allocated; 5ms collecting garbage
Compiler

Compiled 3 233 to 1 244 computations (61.5% saved)

prune23.0ms (0.6%)

Memory
8.2MiB live, 54.5MiB allocated; 3ms collecting garbage
Pruning

29 alts after pruning (19 fresh and 10 done)

PrunedKeptTotal
New2467253
Fresh21214
Picked235
Done077
Total25029279
Accuracy
99.9%
Counts
279 → 29
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.8%
(fma.f64 (sin.f64 y) (neg.f64 z) (*.f64 (cos.f64 y) x))
99.8%
(fma.f64 (cos.f64 y) x (*.f64 (neg.f64 z) (sin.f64 y)))
99.5%
(-.f64 (fma.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)) x (*.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y)) x)) (*.f64 z (sin.f64 y)))
99.6%
(-.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y)) x (*.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)) x)) (*.f64 z (sin.f64 y)))
59.9%
(-.f64 (*.f64 x (fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(approx (* z (sin y)) (*.f64 z y)))
99.8%
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
60.0%
(-.f64 (*.f64 x (cos.f64 y)) #s(approx (* z (sin y)) (*.f64 z y)))
75.0%
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) (*.f64 z (sin.f64 y)))
45.5%
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)))
45.1%
(-.f64 #s(approx (* x (cos y)) (fma.f64 (fma.f64 (*.f64 (*.f64 y y) x) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) x)) (*.f64 y y) x)) #s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)))
36.6%
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x))
41.7%
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
45.7%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) z) y x))
46.1%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 #s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (*.f64 (*.f64 z y) #s(literal 1/6 binary64))) y) z) y x))
46.5%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (neg.f64 y) z x))
46.1%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z)) y x))
34.6%
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (*.f64 x y) #s(literal -1/2 binary64))) y x))
46.5%
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
85.4%
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (-.f64 (/.f64 (*.f64 (cos.f64 y) x) z) (sin.f64 y)) z))
92.7%
#s(approx (- (* x (cos y)) (* z (sin y))) (neg.f64 (*.f64 (fma.f64 z (/.f64 (sin.f64 y) x) (neg.f64 (cos.f64 y))) x)))
14.0%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (*.f64 (neg.f64 y) z)))
42.3%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (neg.f64 (*.f64 (fma.f64 y (/.f64 z x) #s(literal -1 binary64)) x))))
2.6%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z)) (*.f64 (*.f64 y y) y))))
34.6%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x)))
14.0%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y y) (*.f64 #s(literal 1/6 binary64) z)) z) y)))
2.9%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64))))
2.9%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (*.f64 z y)) #s(literal 1/6 binary64))))
3.0%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 y (*.f64 (*.f64 z y) y)) #s(literal 1/6 binary64))))
2.9%
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) y)) z)))
Compiler

Compiled 947 to 744 computations (21.4% saved)

regimes45.0ms (1.2%)

Memory
0.8MiB live, 93.9MiB allocated; 3ms collecting garbage
Counts
38 → 1
Calls
Call 1
Inputs
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (*.f64 (neg.f64 y) z)))
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (neg.f64 y) z x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (*.f64 x y) #s(literal -1/2 binary64))) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) y)) z)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 y (*.f64 (*.f64 z y) y)) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (*.f64 z y)) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (neg.f64 (*.f64 (fma.f64 y (/.f64 z x) #s(literal -1 binary64)) x))))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y y) (*.f64 #s(literal 1/6 binary64) z)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z)) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 #s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (*.f64 (*.f64 z y) #s(literal 1/6 binary64))) y) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z)) (*.f64 (*.f64 y y) y))))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) (*.f64 z (sin.f64 y)))
(-.f64 (*.f64 x (cos.f64 y)) #s(approx (* z (sin y)) (*.f64 z y)))
(-.f64 #s(approx (* x (cos y)) (fma.f64 (fma.f64 (*.f64 (*.f64 y y) x) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) x)) (*.f64 y y) x)) #s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)))
(-.f64 (*.f64 x #s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 z (sin.f64 y)))
(-.f64 #s(approx (* x (cos y)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 y y) x) (*.f64 #s(literal -1/2 binary64) x)) y) y x)) (*.f64 z (sin.f64 y)))
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
(fma.f64 (cos.f64 y) x (*.f64 (neg.f64 z) (sin.f64 y)))
(fma.f64 (sin.f64 y) (neg.f64 z) (*.f64 (cos.f64 y) x))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (-.f64 (/.f64 (*.f64 (cos.f64 y) x) z) (sin.f64 y)) z))
#s(approx (- (* x (cos y)) (* z (sin y))) (neg.f64 (*.f64 (fma.f64 z (/.f64 (sin.f64 y) x) (neg.f64 (cos.f64 y))) x)))
(-.f64 (*.f64 x (fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) #s(approx (* z (sin y)) (*.f64 z y)))
(-.f64 (*.f64 x (fma.f64 (sin.f64 y) (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (cos.f64 y) (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)))))) (*.f64 z (sin.f64 y)))
(-.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y)) x (*.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)) x)) (*.f64 z (sin.f64 y)))
(-.f64 (fma.f64 (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (cos.f64 y)) x (*.f64 (*.f64 (cos.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) (sin.f64 y)) x)) (*.f64 z (sin.f64 y)))
Outputs
(fma.f64 (cos.f64 y) x (*.f64 (neg.f64 z) (sin.f64 y)))
Calls

4 calls:

11.0ms
z
11.0ms
x
10.0ms
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
10.0ms
y
Results
AccuracySegmentsBranch
99.8%1(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
99.8%1x
99.8%1y
99.8%1z
Compiler

Compiled 11 to 17 computations (-54.5% saved)

regimes37.0ms (1%)

Memory
-21.1MiB live, 75.7MiB allocated; 6ms collecting garbage
Counts
30 → 1
Calls
Call 1
Inputs
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (*.f64 (neg.f64 y) z)))
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (neg.f64 y) z x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (*.f64 x y) #s(literal -1/2 binary64))) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) y)) z)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 y (*.f64 (*.f64 z y) y)) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (*.f64 z y)) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (neg.f64 (*.f64 (fma.f64 y (/.f64 z x) #s(literal -1 binary64)) x))))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y y) (*.f64 #s(literal 1/6 binary64) z)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z)) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 #s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (*.f64 (*.f64 z y) #s(literal 1/6 binary64))) y) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z)) (*.f64 (*.f64 y y) y))))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) (*.f64 z (sin.f64 y)))
(-.f64 (*.f64 x (cos.f64 y)) #s(approx (* z (sin y)) (*.f64 z y)))
(-.f64 #s(approx (* x (cos y)) (fma.f64 (fma.f64 (*.f64 (*.f64 y y) x) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) x)) (*.f64 y y) x)) #s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)))
(-.f64 (*.f64 x #s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 z (sin.f64 y)))
(-.f64 #s(approx (* x (cos y)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 y y) x) (*.f64 #s(literal -1/2 binary64) x)) y) y x)) (*.f64 z (sin.f64 y)))
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
Outputs
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
Calls

4 calls:

10.0ms
z
9.0ms
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
8.0ms
x
8.0ms
y
Results
AccuracySegmentsBranch
99.8%1(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
99.8%1x
99.8%1y
99.8%1z
Compiler

Compiled 11 to 17 computations (-54.5% saved)

regimes35.0ms (1%)

Memory
-15.3MiB live, 78.1MiB allocated; 3ms collecting garbage
Counts
29 → 3
Calls
Call 1
Inputs
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (*.f64 (neg.f64 y) z)))
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (neg.f64 y) z x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (*.f64 x y) #s(literal -1/2 binary64))) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) y)) z)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 y (*.f64 (*.f64 z y) y)) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (*.f64 z y)) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (neg.f64 (*.f64 (fma.f64 y (/.f64 z x) #s(literal -1 binary64)) x))))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y y) (*.f64 #s(literal 1/6 binary64) z)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z)) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 #s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (*.f64 (*.f64 z y) #s(literal 1/6 binary64))) y) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z)) (*.f64 (*.f64 y y) y))))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) (*.f64 z (sin.f64 y)))
(-.f64 (*.f64 x (cos.f64 y)) #s(approx (* z (sin y)) (*.f64 z y)))
(-.f64 #s(approx (* x (cos y)) (fma.f64 (fma.f64 (*.f64 (*.f64 y y) x) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) x)) (*.f64 y y) x)) #s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)))
(-.f64 (*.f64 x #s(approx (cos y) (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)))) (*.f64 z (sin.f64 y)))
(-.f64 #s(approx (* x (cos y)) (fma.f64 (*.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 y y) x) (*.f64 #s(literal -1/2 binary64) x)) y) y x)) (*.f64 z (sin.f64 y)))
Outputs
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) (*.f64 z (sin.f64 y)))
(-.f64 (*.f64 x (cos.f64 y)) #s(approx (* z (sin y)) (*.f64 z y)))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) (*.f64 z (sin.f64 y)))
Calls

4 calls:

9.0ms
y
8.0ms
x
8.0ms
z
8.0ms
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
Results
AccuracySegmentsBranch
75.0%1(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
78.8%2x
75.0%1y
82.9%3z
Compiler

Compiled 11 to 17 computations (-54.5% saved)

regimes31.0ms (0.9%)

Memory
4.4MiB live, 55.0MiB allocated; 3ms collecting garbage
Counts
25 → 1
Calls
Call 1
Inputs
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (*.f64 (neg.f64 y) z)))
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (neg.f64 y) z x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (*.f64 x y) #s(literal -1/2 binary64))) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) y)) z)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 y (*.f64 (*.f64 z y) y)) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (*.f64 z y)) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (neg.f64 (*.f64 (fma.f64 y (/.f64 z x) #s(literal -1 binary64)) x))))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y y) (*.f64 #s(literal 1/6 binary64) z)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z)) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 #s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (*.f64 (*.f64 z y) #s(literal 1/6 binary64))) y) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z)) (*.f64 (*.f64 y y) y))))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) (*.f64 z (sin.f64 y)))
Outputs
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) (*.f64 z (sin.f64 y)))
Calls

4 calls:

9.0ms
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
7.0ms
z
7.0ms
x
7.0ms
y
Results
AccuracySegmentsBranch
75.0%1(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
75.0%1y
75.0%1x
75.0%1z
Compiler

Compiled 11 to 17 computations (-54.5% saved)

regimes29.0ms (0.8%)

Memory
20.6MiB live, 67.1MiB allocated; 1ms collecting garbage
Counts
24 → 3
Calls
Call 1
Inputs
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (*.f64 (neg.f64 y) z)))
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (neg.f64 y) z x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (*.f64 x y) #s(literal -1/2 binary64))) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) y)) z)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 y (*.f64 (*.f64 z y) y)) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (*.f64 z y)) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (neg.f64 (*.f64 (fma.f64 y (/.f64 z x) #s(literal -1 binary64)) x))))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y y) (*.f64 #s(literal 1/6 binary64) z)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z)) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 #s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (*.f64 (*.f64 z y) #s(literal 1/6 binary64))) y) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z)) (*.f64 (*.f64 y y) y))))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
#s(approx (- (* x (+ (* (sin y) (cos (* (PI) 1/2))) (* (cos y) (sin (* (PI) 1/2))))) (* z (sin y))) (*.f64 (sin.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))) x))
Outputs
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) (*.f64 (neg.f64 z) (sin.f64 y)))
Calls

4 calls:

7.0ms
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
7.0ms
x
7.0ms
z
6.0ms
y
Results
AccuracySegmentsBranch
58.5%3x
46.5%1(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
73.6%3y
55.9%3z
Compiler

Compiled 11 to 17 computations (-54.5% saved)

regimes25.0ms (0.7%)

Memory
16.1MiB live, 63.1MiB allocated; 1ms collecting garbage
Counts
21 → 1
Calls
Call 1
Inputs
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (*.f64 (neg.f64 y) z)))
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (neg.f64 y) z x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (*.f64 y y) #s(literal -1/2 binary64) #s(literal 1 binary64)) x)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (*.f64 x y) #s(literal -1/2 binary64))) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) y)) z)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 y (*.f64 (*.f64 z y) y)) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 y y) (*.f64 z y)) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) z) #s(literal 1/6 binary64))))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (neg.f64 (*.f64 (fma.f64 y (/.f64 z x) #s(literal -1 binary64)) x))))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (*.f64 y x) #s(literal -1/2 binary64)) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y y) (*.f64 #s(literal 1/6 binary64) z)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 y (*.f64 z y)) #s(literal 1/6 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) z) #s(literal 1/6 binary64)) z) y)))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 #s(approx (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) (*.f64 (fma.f64 (*.f64 y y) #s(literal 1/6 binary64) #s(literal -1 binary64)) z)) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 #s(approx (+ (* 1/6 (* z y)) (* -1/2 x)) (*.f64 (*.f64 z y) #s(literal 1/6 binary64))) y) z) y x))
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (+ (* (- (* (+ (* 1/6 (* z y)) (* -1/2 x)) y) z) y) x) (*.f64 (fma.f64 (/.f64 x y) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) z)) (*.f64 (*.f64 y y) y))))
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 z y) (*.f64 #s(literal -1/2 binary64) x)) y) z) y x))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 #s(approx (+ (* (* 1/120 (* y y)) z) (* -1/6 z)) (*.f64 (*.f64 (*.f64 y y) #s(literal 1/120 binary64)) z)) (*.f64 y y) z) y)))
(-.f64 (*.f64 x #s(approx (cos y) #s(literal 1 binary64))) #s(approx (* z (sin y)) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) z (*.f64 #s(literal -1/6 binary64) z)) (*.f64 y y) z) y)))
Outputs
#s(approx (- (* x (cos y)) (* z (sin y))) (fma.f64 (neg.f64 y) z x))
Calls

4 calls:

7.0ms
x
6.0ms
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
6.0ms
z
6.0ms
y
Results
AccuracySegmentsBranch
46.5%1(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
46.5%1z
46.5%1x
46.5%1y
Compiler

Compiled 11 to 17 computations (-54.5% saved)

regimes8.0ms (0.2%)

Memory
-26.2MiB live, 19.6MiB allocated; 3ms collecting garbage
Counts
2 → 1
Calls
Call 1
Inputs
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (*.f64 (neg.f64 y) z)))
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
Outputs
#s(approx (- (* x (cos y)) (* z (sin y))) (-.f64 x (*.f64 z y)))
Calls

4 calls:

3.0ms
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
1.0ms
x
1.0ms
y
1.0ms
z
Results
AccuracySegmentsBranch
46.5%1x
46.5%1y
46.5%1(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
46.5%1z
Compiler

Compiled 11 to 17 computations (-54.5% saved)

regimes4.0ms (0.1%)

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

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (*.f64 (neg.f64 y) z)))
Outputs
#s(approx (- (* x (cos y)) (* z (sin y))) #s(approx (- x (* z y)) (*.f64 (neg.f64 y) z)))
Calls

4 calls:

1.0ms
(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
1.0ms
z
1.0ms
x
1.0ms
y
Results
AccuracySegmentsBranch
14.0%1x
14.0%1y
14.0%1(-.f64 (*.f64 x (cos.f64 y)) (*.f64 z (sin.f64 y)))
14.0%1z
Compiler

Compiled 11 to 17 computations (-54.5% saved)

bsearch35.0ms (1%)

Memory
13.2MiB live, 65.2MiB allocated; 9ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
14.0ms
1.7033879675551113e-193
3.284633251730011e-190
19.0ms
-1.6785600786068552e-117
-1.2915871189849087e-118
Samples
25.0ms224×0valid
Compiler

Compiled 292 to 322 computations (-10.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 20.0ms
ival-cos: 12.0ms (60.9% of total)
ival-sin: 5.0ms (25.4% of total)
ival-mult!: 2.0ms (10.1% of total)
ival-sub!: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)

bsearch81.0ms (2.2%)

Memory
-12.7MiB live, 80.3MiB allocated; 7ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
59.0ms
1.2094306035458234e-13
13185648334567910.0
20.0ms
-11976630375.788538
-0.0007780860885120256
Samples
66.0ms336×0valid
Compiler

Compiled 621 to 665 computations (-7.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-cos: 8.0ms (51.1% of total)
ival-sin: 4.0ms (25.5% of total)
ival-mult!: 3.0ms (19.2% of total)
ival-sub!: 1.0ms (6.4% of total)
adjust: 0.0ms (0% of total)

derivations313.0ms (8.7%)

Memory
-22.5MiB live, 311.0MiB allocated; 23ms collecting garbage
Stop Event
fuel
Compiler

Compiled 75 to 54 computations (28% saved)

preprocess105.0ms (2.9%)

Memory
35.7MiB live, 127.1MiB allocated; 8ms collecting garbage
Compiler

Compiled 83 to 62 computations (25.3% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...