2cos (problem 3.3.5)

Time bar (total: 10.8s)

start0.0ms (0%)

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

analyze37.0ms (0.3%)

Memory
33.1MiB live, 33.1MiB allocated; 0ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%50.6%49.4%0%0%0%0
0%0%50.6%49.4%0%0%0%1
0%0%50.6%49.4%0%0%0%2
0%0%25.3%49.4%0%25.3%0%3
0%0%25.3%49.4%0%25.3%0%4
0%0%19%49.4%0%31.6%0%5
0%0%15.8%49.4%0%34.8%0%6
0%0%11.1%49.4%0%39.5%0%7
0%0%8.7%49.4%0%41.9%0%8
0%0%5.9%49.4%0%44.6%0%9
0%0%4.5%49.4%0%46%0%10
0%0%3.1%49.4%0%47.5%0%11
0%0%2.7%49.4%0%47.9%0%12
Compiler

Compiled 27 to 19 computations (29.6% saved)

sample7.9s (72.7%)

Memory
204.2MiB live, 6 739.7MiB allocated; 3.6s collecting garbage
Samples
3.0s5 754×2valid
2.9s26 001×0invalid
429.0ms2 441×1valid
7.0ms61×0valid
Precisions
Click to see histograms. Total time spent on operations: 4.7s
ival-cos: 2.3s (48.5% of total)
adjust: 818.0ms (17.5% of total)
const: 448.0ms (9.6% of total)
ival-add: 259.0ms (5.5% of total)
ival-sub: 239.0ms (5.1% of total)
ival-fabs: 236.0ms (5.1% of total)
ival-mult: 184.0ms (3.9% of total)
ival-<: 129.0ms (2.8% of total)
ival-and: 78.0ms (1.7% of total)
ival-assert: 14.0ms (0.3% of total)
Bogosity

explain318.0ms (2.9%)

Memory
-23.8MiB live, 268.2MiB allocated; 71ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1361(-2.0144374632444318e-156 1.3671708357868317e-167)1(0.6504713874538658 0.020380462616383693)(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
10-0-(cos.f64 (+.f64 x eps))
00-0-eps
00-0-(+.f64 x eps)
00-0-(cos.f64 x)
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
-.f64(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))cancellation1361
cos.f64(cos.f64 (+.f64 x eps))sensitivity10
Confusion
Predicted +Predicted -
+1361
-1118
Precision
0.9927007299270073
Recall
0.9927007299270073
Confusion?
Predicted +Predicted MaybePredicted -
+13610
-10118
Precision?
0.9927536231884058
Recall?
1.0
Freqs
test
numberfreq
0119
1137
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
147.0ms366×2valid
25.0ms142×1valid
0.0ms0valid
Compiler

Compiled 47 to 22 computations (53.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 142.0ms
ival-cos: 101.0ms (71% of total)
adjust: 25.0ms (17.6% of total)
ival-sub: 11.0ms (7.7% of total)
ival-add: 4.0ms (2.8% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess257.0ms (2.4%)

Memory
27.9MiB live, 216.8MiB allocated; 53ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02148
15348
29348
312448
413248
515448
623848
780048
8517548
067
0107
1227
2407
3657
4787
51007
61847
77427
850737
085057
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Outputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
Compiler

Compiled 7 to 6 computations (14.3% saved)

eval0.0ms (0%)

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

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
51.3%
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 7 to 6 computations (14.3% saved)

series5.0ms (0%)

Memory
10.7MiB live, 10.7MiB allocated; 0ms collecting garbage
Counts
6 → 36
Calls
Call 1
Inputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
x
eps
(cos.f64 x)
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos eps) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* -1 (* x (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos eps)))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos eps) (* -1 (* x (sin eps))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos eps) (* x (- (* -1/2 (* x (cos eps))) (sin eps))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos eps) (* x (- (* x (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps))))) (sin eps))))))
#s(approx (+ x eps) #s(hole binary64 eps))
#s(approx (+ x eps) #s(hole binary64 (+ eps x)))
#s(approx x #s(hole binary64 x))
#s(approx (cos x) #s(hole binary64 1))
#s(approx (cos x) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (+ eps x)) (cos x))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos (+ eps x))))
#s(approx (+ x eps) #s(hole binary64 x))
#s(approx (+ x eps) #s(hole binary64 (* x (+ 1 (/ eps x)))))
#s(approx (cos x) #s(hole binary64 (cos x)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- eps (* -1 x))) (cos x))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos (- eps (* -1 x)))))
#s(approx (+ x eps) #s(hole binary64 (* -1 (* x (- (* -1 (/ eps x)) 1)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* -1/2 (* eps (cos x))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos x)))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos x) (* -1 (* eps (sin x))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos x) (* eps (- (* -1/2 (* eps (cos x))) (sin x))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos x) (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))))
#s(approx eps #s(hole binary64 eps))
#s(approx (+ x eps) #s(hole binary64 (* eps (+ 1 (/ x eps)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- x (* -1 eps))) (cos x))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos (- x (* -1 eps)))))
#s(approx (+ x eps) #s(hole binary64 (* -1 (* eps (- (* -1 (/ x eps)) 1)))))
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@0
((- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) x eps (cos x))
1.0ms
eps
@-inf
((- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) x eps (cos x))
1.0ms
eps
@inf
((- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) x eps (cos x))
1.0ms
x
@-inf
((- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) x eps (cos x))
1.0ms
eps
@0
((- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) x eps (cos x))

rewrite162.0ms (1.5%)

Memory
1.5MiB live, 184.4MiB allocated; 42ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0148544
0153528
1883525
08275504
Stop Event
iter limit
node limit
iter limit
Counts
42 → 113
Calls
Call 1
Inputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
x
eps
(cos.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos eps) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* -1 (* x (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos eps)))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos eps) (* -1 (* x (sin eps))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos eps) (* x (- (* -1/2 (* x (cos eps))) (sin eps))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos eps) (* x (- (* x (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps))))) (sin eps))))))
#s(approx (+ x eps) #s(hole binary64 eps))
#s(approx (+ x eps) #s(hole binary64 (+ eps x)))
#s(approx x #s(hole binary64 x))
#s(approx (cos x) #s(hole binary64 1))
#s(approx (cos x) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (+ eps x)) (cos x))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos (+ eps x))))
#s(approx (+ x eps) #s(hole binary64 x))
#s(approx (+ x eps) #s(hole binary64 (* x (+ 1 (/ eps x)))))
#s(approx (cos x) #s(hole binary64 (cos x)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- eps (* -1 x))) (cos x))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos (- eps (* -1 x)))))
#s(approx (+ x eps) #s(hole binary64 (* -1 (* x (- (* -1 (/ eps x)) 1)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* -1/2 (* eps (cos x))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos x)))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos x) (* -1 (* eps (sin x))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos x) (* eps (- (* -1/2 (* eps (cos x))) (sin x))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos x) (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))))
#s(approx eps #s(hole binary64 eps))
#s(approx (+ x eps) #s(hole binary64 (* eps (+ 1 (/ x eps)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- x (* -1 eps))) (cos x))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos (- x (* -1 eps)))))
#s(approx (+ x eps) #s(hole binary64 (* -1 (* eps (- (* -1 (/ x eps)) 1)))))
Outputs
(*.f64 (*.f64 #s(literal -2 binary64) (sin.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64)))) (sin.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))))
(*.f64 (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64)))) #s(literal -2 binary64))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 (+.f64 eps x)) (neg.f64 x)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (neg.f64 (+.f64 eps x)) (neg.f64 x)) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 (+.f64 eps x)) x) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (neg.f64 (+.f64 eps x)) x) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 eps x) (neg.f64 x)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (+.f64 eps x) (neg.f64 x)) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (+.f64 eps x)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (+.f64 eps x)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (pow.f64 (cos.f64 x) #s(literal 2 binary64)))) (neg.f64 (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (pow.f64 (cos.f64 x) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (pow.f64 (cos.f64 x) #s(literal 2 binary64))) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))))
(/.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (pow.f64 (cos.f64 x) #s(literal 3 binary64))) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64))))
(fma.f64 (cos.f64 eps) (cos.f64 x) (-.f64 (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)) (cos.f64 x)))
(fma.f64 (cos.f64 eps) (cos.f64 x) (-.f64 (*.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x)) (cos.f64 x)))
(fma.f64 (cos.f64 x) (cos.f64 eps) (-.f64 (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)) (cos.f64 x)))
(fma.f64 (cos.f64 x) (cos.f64 eps) (-.f64 (*.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x)) (cos.f64 x)))
(-.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(-.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(+.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (-.f64 (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)) (cos.f64 x)))
(+.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (-.f64 (*.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x)) (cos.f64 x)))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 eps) (cos.f64 x))) (*.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))) (fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 eps) (cos.f64 x))) (*.f64 (*.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x)) (*.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x)))) (-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x))))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 eps) (cos.f64 x))) (*.f64 (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))) (-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)) (*.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 eps) (cos.f64 x)) (-.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x)) (*.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x))) (*.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)) #s(literal 3 binary64))) (fma.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 eps) (cos.f64 x)) (-.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (*.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))))))
(fma.f64 (sin.f64 (+.f64 eps x)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 (+.f64 eps x)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (cos.f64 eps) (cos.f64 x)))
(fma.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps) (*.f64 (cos.f64 eps) (cos.f64 x)))
(fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (cos.f64 eps) (cos.f64 x)))
(fma.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)) (*.f64 (cos.f64 eps) (cos.f64 x)))
(fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x)))
(fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))
(fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x)))
(fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))
(sin.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (+.f64 eps x)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 x)) (neg.f64 (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 eps)) (neg.f64 (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps)))
(cos.f64 (neg.f64 (neg.f64 (+.f64 eps x))))
(cos.f64 (neg.f64 (+.f64 eps x)))
(cos.f64 (+.f64 eps x))
(+.f64 (*.f64 (sin.f64 (+.f64 eps x)) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 (+.f64 eps x)) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(+.f64 (*.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x)) (*.f64 (cos.f64 eps) (cos.f64 x)))
(+.f64 (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)) (*.f64 (cos.f64 eps) (cos.f64 x)))
(+.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))
(/.f64 (neg.f64 (*.f64 (-.f64 x eps) (+.f64 eps x))) (neg.f64 (-.f64 x eps)))
(/.f64 (neg.f64 (*.f64 (-.f64 eps x) (+.f64 eps x))) (neg.f64 (-.f64 eps x)))
(/.f64 (neg.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 eps #s(literal 3 binary64)))) (neg.f64 (fma.f64 eps (-.f64 eps x) (*.f64 x x))))
(/.f64 (neg.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 eps #s(literal 3 binary64)))) (neg.f64 (fma.f64 eps eps (*.f64 x (-.f64 x eps)))))
(/.f64 (*.f64 (-.f64 x eps) (+.f64 eps x)) (-.f64 x eps))
(/.f64 (*.f64 (-.f64 eps x) (+.f64 eps x)) (-.f64 eps x))
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 eps #s(literal 3 binary64))) (fma.f64 eps (-.f64 eps x) (*.f64 x x)))
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 eps #s(literal 3 binary64))) (fma.f64 eps eps (*.f64 x (-.f64 x eps))))
(-.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))) (/.f64 (pow.f64 (neg.f64 eps) #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))))
(-.f64 (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps eps (*.f64 x (-.f64 x eps)))) (/.f64 (pow.f64 (neg.f64 x) #s(literal 3 binary64)) (fma.f64 eps eps (*.f64 x (-.f64 x eps)))))
(-.f64 (/.f64 (*.f64 x x) (-.f64 x eps)) (/.f64 (*.f64 eps eps) (-.f64 x eps)))
(-.f64 (/.f64 (*.f64 eps eps) (-.f64 eps x)) (/.f64 (*.f64 x x) (-.f64 eps x)))
(-.f64 eps (neg.f64 x))
(-.f64 x (neg.f64 eps))
(+.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))) (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))))
(+.f64 (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps eps (*.f64 x (-.f64 x eps)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps eps (*.f64 x (-.f64 x eps)))))
(+.f64 eps (*.f64 (neg.f64 x) #s(literal -1 binary64)))
(+.f64 eps x)
(+.f64 x (*.f64 (neg.f64 eps) #s(literal -1 binary64)))
(+.f64 x eps)
x
eps
(fma.f64 (sin.f64 x) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 x) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (fma.f64 #s(literal -1 binary64) x (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x))
(cos.f64 (neg.f64 x))
(cos.f64 x)
(+.f64 (*.f64 (sin.f64 x) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 x) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x #s(literal 1 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 eps) #s(literal 1/2 binary64)) x) (sin.f64 eps)) x (-.f64 (cos.f64 eps) #s(literal 1 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 eps) x) (fma.f64 #s(literal -1/2 binary64) (cos.f64 eps) #s(literal 1/2 binary64))) x) (sin.f64 eps)) x (-.f64 (cos.f64 eps) #s(literal 1 binary64))))
#s(approx (cos (+ x eps)) (cos.f64 eps))
#s(approx (cos (+ x eps)) (fma.f64 (neg.f64 x) (sin.f64 eps) (cos.f64 eps)))
#s(approx (cos (+ x eps)) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 eps) x) #s(literal -1/2 binary64)) (sin.f64 eps)) x (cos.f64 eps)))
#s(approx (cos (+ x eps)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 eps) x) (*.f64 #s(literal -1/2 binary64) (cos.f64 eps))) x) (sin.f64 eps)) x (cos.f64 eps)))
#s(approx (+ x eps) eps)
#s(approx (+ x eps) (+.f64 eps x))
#s(approx x x)
#s(approx (cos x) #s(literal 1 binary64))
#s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
#s(approx (cos (+ x eps)) (cos.f64 (+.f64 eps x)))
#s(approx (+ x eps) x)
#s(approx (+ x eps) (fma.f64 (/.f64 eps x) x x))
#s(approx (cos x) (cos.f64 x))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
#s(approx (cos (+ x eps)) (cos.f64 (+.f64 eps x)))
#s(approx (+ x eps) (*.f64 (fma.f64 (/.f64 eps x) #s(literal -1 binary64) #s(literal -1 binary64)) (neg.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (fma.f64 (sin.f64 x) #s(literal 1/6 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/24 binary64))) eps (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
#s(approx (cos (+ x eps)) (cos.f64 x))
#s(approx (cos (+ x eps)) (fma.f64 (neg.f64 eps) (sin.f64 x) (cos.f64 x)))
#s(approx (cos (+ x eps)) (fma.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) (sin.f64 x)) eps (cos.f64 x)))
#s(approx (cos (+ x eps)) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps (cos.f64 x)))
#s(approx eps eps)
#s(approx (+ x eps) (fma.f64 (/.f64 x eps) eps eps))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
#s(approx (cos (+ x eps)) (cos.f64 (+.f64 eps x)))
#s(approx (+ x eps) (*.f64 (fma.f64 (/.f64 x eps) #s(literal -1 binary64) #s(literal -1 binary64)) (neg.f64 eps)))

eval15.0ms (0.1%)

Memory
-17.1MiB live, 28.2MiB allocated; 7ms collecting garbage
Compiler

Compiled 2 017 to 430 computations (78.7% saved)

prune9.0ms (0.1%)

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

12 alts after pruning (11 fresh and 1 done)

PrunedKeptTotal
New10011111
Fresh000
Picked011
Done000
Total10012112
Accuracy
99.8%
Counts
112 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
51.4%
(-.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
51.5%
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
51.4%
(-.f64 (sin.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64)))) (cos.f64 x))
51.3%
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
50.5%
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
50.4%
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
50.0%
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
80.8%
(*.f64 (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64)))) #s(literal -2 binary64))
49.9%
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
99.2%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
99.2%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) (sin.f64 x)) eps))
78.1%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
Compiler

Compiled 395 to 276 computations (30.1% saved)

series36.0ms (0.3%)

Memory
-44.5MiB live, 63.2MiB allocated; 15ms collecting garbage
Counts
41 → 183
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps)
(-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x))
(*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps)
(fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))
(*.f64 (sin.f64 x) eps)
(sin.f64 x)
x
eps
#s(literal 1/6 binary64)
(*.f64 #s(literal -1/2 binary64) (cos.f64 x))
#s(literal -1/2 binary64)
(cos.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(-.f64 (cos.f64 eps) #s(literal 1 binary64))
(cos.f64 eps)
#s(literal 1 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
(*.f64 (neg.f64 eps) (sin.f64 x))
(neg.f64 eps)
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64))
(*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x)
(*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x)
(fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64))
#s(literal -1/720 binary64)
(*.f64 x x)
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
(-.f64 (sin.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64)))) (cos.f64 x))
(sin.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64)))
(neg.f64 (+.f64 eps x))
(+.f64 eps x)
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
#s(literal 2 binary64)
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos eps) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* -1 (* x (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1/2 (pow eps 2))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* eps (* x (- (* 1/6 (pow eps 2)) 1))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* 1/4 (* (pow eps 2) x)) (* eps (- (* 1/6 (pow eps 2)) 1)))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* eps (- (* 1/6 (pow eps 2)) 1)) (* x (+ (* 1/4 (pow eps 2)) (* eps (* x (+ 1/6 (* -1/36 (pow eps 2))))))))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* -1/2 eps)))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (* 1/6 (pow eps 2)) 1)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (+ (* 1/6 (pow eps 2)) (* 1/4 (* eps x))) 1)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (+ (* 1/6 (pow eps 2)) (* x (+ (* 1/4 eps) (* x (+ 1/6 (* -1/36 (pow eps 2))))))) 1)))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* -1/2 eps)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (+ (* -1/2 eps) (* 1/6 (* (pow eps 2) x)))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (+ (* -1/2 eps) (* x (+ (* 1/6 (pow eps 2)) (* 1/4 (* eps x)))))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (+ (* -1/2 eps) (* x (+ (* 1/6 (pow eps 2)) (* x (+ (* -1/36 (* (pow eps 2) x)) (* 1/4 eps))))))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 -1/2))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (- (* 1/6 (* eps x)) 1/2)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (- (* x (+ (* 1/6 eps) (* 1/4 x))) 1/2)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (- (* x (+ (* 1/6 eps) (* x (+ 1/4 (* -1/36 (* eps x)))))) 1/2)))
#s(approx (* (sin x) eps) #s(hole binary64 (* eps x)))
#s(approx (* (sin x) eps) #s(hole binary64 (* x (+ eps (* -1/6 (* eps (pow x 2)))))))
#s(approx (* (sin x) eps) #s(hole binary64 (* x (+ eps (* (pow x 2) (+ (* -1/6 eps) (* 1/120 (* eps (pow x 2)))))))))
#s(approx (* (sin x) eps) #s(hole binary64 (* x (+ eps (* (pow x 2) (+ (* -1/6 eps) (* (pow x 2) (+ (* -1/5040 (* eps (pow x 2))) (* 1/120 eps)))))))))
#s(approx (sin x) #s(hole binary64 x))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* -1/6 (pow x 2))))))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))))
#s(approx x #s(hole binary64 x))
#s(approx (* -1/2 (cos x)) #s(hole binary64 -1/2))
#s(approx (* -1/2 (cos x)) #s(hole binary64 (- (* 1/4 (pow x 2)) 1/2)))
#s(approx (* -1/2 (cos x)) #s(hole binary64 (- (* (pow x 2) (+ 1/4 (* -1/48 (pow x 2)))) 1/2)))
#s(approx (* -1/2 (cos x)) #s(hole binary64 (- (* (pow x 2) (+ 1/4 (* (pow x 2) (- (* 1/1440 (pow x 2)) 1/48)))) 1/2)))
#s(approx (cos x) #s(hole binary64 1))
#s(approx (cos x) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* -1 (* eps x))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* 1/6 (* eps (pow x 2)))))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps)))))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* (pow x 2) (+ (* 1/6 eps) (* (pow x 2) (+ (* -1/120 eps) (* 1/5040 (* eps (pow x 2)))))))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos eps)))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos eps) (* -1 (* x (sin eps))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos eps) (* x (- (* -1/2 (* x (cos eps))) (sin eps))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos eps) (* x (- (* x (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps))))) (sin eps))))))
#s(approx (+ x eps) #s(hole binary64 eps))
#s(approx (+ x eps) #s(hole binary64 (+ eps x)))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 1))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) #s(hole binary64 -1/2))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) #s(hole binary64 (- (* 1/24 (pow x 2)) 1/2)))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) #s(hole binary64 (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
#s(approx (* (* (+ (* -1/720 (* x x)) 1/24) x) x) #s(hole binary64 (* 1/24 (pow x 2))))
#s(approx (* (* (+ (* -1/720 (* x x)) 1/24) x) x) #s(hole binary64 (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2))))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) x) #s(hole binary64 (* 1/24 x)))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) x) #s(hole binary64 (* x (+ 1/24 (* -1/720 (pow x 2))))))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 1/24))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 (+ 1/24 (* -1/720 (pow x 2)))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) eps)) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* -1 (* x (cos (- (* 1/2 (PI)) eps))))) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* x (+ 1/2 (* -1/2 (sin (- (* 1/2 (PI)) eps)))))))) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* x (+ 1/2 (+ (* -1/2 (sin (- (* 1/2 (PI)) eps))) (* 1/6 (* x (cos (- (* 1/2 (PI)) eps)))))))))) 1)))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (sin (- (* 1/2 (PI)) eps))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (+ (sin (- (* 1/2 (PI)) eps)) (* -1 (* x (cos (- (* 1/2 (PI)) eps)))))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* -1/2 (* x (sin (- (* 1/2 (PI)) eps)))))))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* x (+ (* -1/2 (sin (- (* 1/2 (PI)) eps))) (* 1/6 (* x (cos (- (* 1/2 (PI)) eps)))))))))))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (- (* 1/2 (PI)) eps)))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (- (+ (* -1 x) (* 1/2 (PI))) eps)))
#s(approx (neg (+ eps x)) #s(hole binary64 (* -1 eps)))
#s(approx (neg (+ eps x)) #s(hole binary64 (- (* -1 x) eps)))
#s(approx (+ eps x) #s(hole binary64 eps))
#s(approx (+ eps x) #s(hole binary64 (+ eps x)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (+ eps x)) (cos x))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x)))))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))))
#s(approx (* (sin x) eps) #s(hole binary64 (* eps (sin x))))
#s(approx (sin x) #s(hole binary64 (sin x)))
#s(approx (* -1/2 (cos x)) #s(hole binary64 (* -1/2 (cos x))))
#s(approx (cos x) #s(hole binary64 (cos x)))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos (+ eps x))))
#s(approx (+ x eps) #s(hole binary64 x))
#s(approx (+ x eps) #s(hole binary64 (* x (+ 1 (/ eps x)))))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 (* -1/720 (pow x 6))))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/24 (/ 1 (pow x 2))) (+ 1/720 (/ 1/2 (pow x 4)))))))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (+ (* 1/24 (/ 1 (pow x 2))) (/ 1 (pow x 6))) (+ 1/720 (/ 1/2 (pow x 4)))))))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) #s(hole binary64 (* -1/720 (pow x 4))))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) #s(hole binary64 (* (pow x 4) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) #s(hole binary64 (* (pow x 4) (- (* 1/24 (/ 1 (pow x 2))) (+ 1/720 (/ 1/2 (pow x 4)))))))
#s(approx (* (* (+ (* -1/720 (* x x)) 1/24) x) x) #s(hole binary64 (* -1/720 (pow x 4))))
#s(approx (* (* (+ (* -1/720 (* x x)) 1/24) x) x) #s(hole binary64 (* (pow x 4) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) x) #s(hole binary64 (* -1/720 (pow x 3))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) x) #s(hole binary64 (* (pow x 3) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 (* -1/720 (pow x 2))))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 (* (pow x 2) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) (+ eps x))) (cos x))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (sin (- (* 1/2 (PI)) (+ eps x)))))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (* -1 x)))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (* x (- (* 1/2 (/ (PI) x)) (+ 1 (/ eps x))))))
#s(approx (neg (+ eps x)) #s(hole binary64 (* -1 x)))
#s(approx (neg (+ eps x)) #s(hole binary64 (* x (- (* -1 (/ eps x)) 1))))
#s(approx (+ eps x) #s(hole binary64 x))
#s(approx (+ eps x) #s(hole binary64 (* x (+ 1 (/ eps x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- eps (* -1 x))) (cos x))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos (- eps (* -1 x)))))
#s(approx (+ x eps) #s(hole binary64 (* -1 (* x (- (* -1 (/ eps x)) 1)))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) x) #s(hole binary64 (* -1 (* (pow x 3) (- 1/720 (* 1/24 (/ 1 (pow x 2))))))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (+ (* -1 x) (* 1/2 (PI))) eps)) (cos x))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (sin (- (+ (* -1 x) (* 1/2 (PI))) eps))))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (* -1 (* x (+ 1 (* -1 (/ (- (* 1/2 (PI)) eps) x)))))))
#s(approx (neg (+ eps x)) #s(hole binary64 (* -1 (* x (+ 1 (/ eps x))))))
#s(approx (+ eps x) #s(hole binary64 (* -1 (* x (- (* -1 (/ eps x)) 1)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* -1/2 (* eps (cos x))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* eps (+ (* -1 (sin x)) (* -1/2 (* eps (cos x)))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* eps (+ (* -1 (sin x)) (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x)))))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* -1 (sin x))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (- (* -1/2 (* eps (cos x))) (sin x))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* -1/2 (* eps (cos x)))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* -1/2 (cos x))))
#s(approx eps #s(hole binary64 eps))
#s(approx (- (cos eps) 1) #s(hole binary64 (* -1/2 (pow eps 2))))
#s(approx (- (cos eps) 1) #s(hole binary64 (* (pow eps 2) (- (* 1/24 (pow eps 2)) 1/2))))
#s(approx (- (cos eps) 1) #s(hole binary64 (* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* -1/720 (pow eps 2)))) 1/2))))
#s(approx (- (cos eps) 1) #s(hole binary64 (* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* (pow eps 2) (- (* 1/40320 (pow eps 2)) 1/720)))) 1/2))))
#s(approx (cos eps) #s(hole binary64 1))
#s(approx (cos eps) #s(hole binary64 (+ 1 (* -1/2 (pow eps 2)))))
#s(approx (cos eps) #s(hole binary64 (+ 1 (* (pow eps 2) (- (* 1/24 (pow eps 2)) 1/2)))))
#s(approx (cos eps) #s(hole binary64 (+ 1 (* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* -1/720 (pow eps 2)))) 1/2)))))
#s(approx (neg eps) #s(hole binary64 (* -1 eps)))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos x)))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos x) (* -1 (* eps (sin x))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos x) (* eps (- (* -1/2 (* eps (cos x))) (sin x))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos x) (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) x)) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* -1 (* eps (cos (- (* 1/2 (PI)) x))))) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* -1/2 (* eps (sin (- (* 1/2 (PI)) x))))))) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* eps (+ (* -1/2 (sin (- (* 1/2 (PI)) x))) (* 1/6 (* eps (cos (- (* 1/2 (PI)) x))))))))) (cos x))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (sin (- (* 1/2 (PI)) x))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (+ (sin (- (* 1/2 (PI)) x)) (* -1 (* eps (cos (- (* 1/2 (PI)) x)))))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* -1/2 (* eps (sin (- (* 1/2 (PI)) x)))))))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* eps (+ (* -1/2 (sin (- (* 1/2 (PI)) x))) (* 1/6 (* eps (cos (- (* 1/2 (PI)) x)))))))))))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (- (* 1/2 (PI)) x)))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (- (+ (* -1 eps) (* 1/2 (PI))) x)))
#s(approx (neg (+ eps x)) #s(hole binary64 (- (* -1 eps) x)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* 1/6 (* (pow eps 3) (sin x)))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* (pow eps 3) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* (pow eps 3) (+ (* -1 (/ (sin x) (pow eps 2))) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x)))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* 1/6 (* (pow eps 2) (sin x)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* (pow eps 2) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* (pow eps 2) (+ (* -1 (/ (sin x) (pow eps 2))) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x)))))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* 1/6 (* (pow eps 2) (sin x)))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* (pow eps 2) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* 1/6 (* eps (sin x)))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* eps (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (- (cos eps) 1) #s(hole binary64 (- (cos eps) 1)))
#s(approx (cos eps) #s(hole binary64 (cos eps)))
#s(approx (+ x eps) #s(hole binary64 (* eps (+ 1 (/ x eps)))))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (* -1 eps)))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (* eps (- (* 1/2 (/ (PI) eps)) (+ 1 (/ x eps))))))
#s(approx (neg (+ eps x)) #s(hole binary64 (* eps (- (* -1 (/ x eps)) 1))))
#s(approx (+ eps x) #s(hole binary64 (* eps (+ 1 (/ x eps)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- x (* -1 eps))) (cos x))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1 (* (pow eps 3) (+ (* -1/6 (sin x)) (* 1/2 (/ (cos x) eps)))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1 (* (pow eps 3) (+ (* -1 (/ (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))) eps)) (* -1/6 (sin x)))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* (pow eps 2) (+ (* -1 (/ (+ (* 1/2 (cos x)) (/ (sin x) eps)) eps)) (* 1/6 (sin x))))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* -1 (* eps (+ (* -1/6 (sin x)) (* 1/2 (/ (cos x) eps)))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos (- x (* -1 eps)))))
#s(approx (+ x eps) #s(hole binary64 (* -1 (* eps (- (* -1 (/ x eps)) 1)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (+ (* -1 eps) (* 1/2 (PI))) x)) (cos x))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (sin (- (+ (* -1 eps) (* 1/2 (PI))) x))))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (* -1 (* eps (+ 1 (* -1 (/ (- (* 1/2 (PI)) x) eps)))))))
#s(approx (neg (+ eps x)) #s(hole binary64 (* -1 (* eps (+ 1 (/ x eps))))))
#s(approx (+ eps x) #s(hole binary64 (* -1 (* eps (- (* -1 (/ x eps)) 1)))))
Calls

6 calls:

TimeVariablePointExpression
8.0ms
eps
@-inf
((- (cos (+ x eps)) (cos x)) (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (* (sin x) eps) (sin x) x eps 1/6 (* -1/2 (cos x)) -1/2 (cos x) (- (cos (+ x eps)) (cos x)) (- (cos eps) 1) (cos eps) 1 (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (cos x) (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* (* (+ (* -1/720 (* x x)) 1/24) x) x) (* (+ (* -1/720 (* x x)) 1/24) x) (+ (* -1/720 (* x x)) 1/24) -1/720 (* x x) 1/24 1/2 (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (sin (+ (neg (+ eps x)) (/ (PI) 2))) (+ (neg (+ eps x)) (/ (PI) 2)) (neg (+ eps x)) (+ eps x) (/ (PI) 2) (PI) 2)
8.0ms
x
@0
((- (cos (+ x eps)) (cos x)) (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (* (sin x) eps) (sin x) x eps 1/6 (* -1/2 (cos x)) -1/2 (cos x) (- (cos (+ x eps)) (cos x)) (- (cos eps) 1) (cos eps) 1 (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (cos x) (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* (* (+ (* -1/720 (* x x)) 1/24) x) x) (* (+ (* -1/720 (* x x)) 1/24) x) (+ (* -1/720 (* x x)) 1/24) -1/720 (* x x) 1/24 1/2 (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (sin (+ (neg (+ eps x)) (/ (PI) 2))) (+ (neg (+ eps x)) (/ (PI) 2)) (neg (+ eps x)) (+ eps x) (/ (PI) 2) (PI) 2)
5.0ms
x
@inf
((- (cos (+ x eps)) (cos x)) (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (* (sin x) eps) (sin x) x eps 1/6 (* -1/2 (cos x)) -1/2 (cos x) (- (cos (+ x eps)) (cos x)) (- (cos eps) 1) (cos eps) 1 (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (cos x) (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* (* (+ (* -1/720 (* x x)) 1/24) x) x) (* (+ (* -1/720 (* x x)) 1/24) x) (+ (* -1/720 (* x x)) 1/24) -1/720 (* x x) 1/24 1/2 (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (sin (+ (neg (+ eps x)) (/ (PI) 2))) (+ (neg (+ eps x)) (/ (PI) 2)) (neg (+ eps x)) (+ eps x) (/ (PI) 2) (PI) 2)
5.0ms
eps
@inf
((- (cos (+ x eps)) (cos x)) (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (* (sin x) eps) (sin x) x eps 1/6 (* -1/2 (cos x)) -1/2 (cos x) (- (cos (+ x eps)) (cos x)) (- (cos eps) 1) (cos eps) 1 (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (cos x) (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* (* (+ (* -1/720 (* x x)) 1/24) x) x) (* (+ (* -1/720 (* x x)) 1/24) x) (+ (* -1/720 (* x x)) 1/24) -1/720 (* x x) 1/24 1/2 (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (sin (+ (neg (+ eps x)) (/ (PI) 2))) (+ (neg (+ eps x)) (/ (PI) 2)) (neg (+ eps x)) (+ eps x) (/ (PI) 2) (PI) 2)
4.0ms
x
@-inf
((- (cos (+ x eps)) (cos x)) (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (* (sin x) eps) (sin x) x eps 1/6 (* -1/2 (cos x)) -1/2 (cos x) (- (cos (+ x eps)) (cos x)) (- (cos eps) 1) (cos eps) 1 (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (cos x) (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* (* (+ (* -1/720 (* x x)) 1/24) x) x) (* (+ (* -1/720 (* x x)) 1/24) x) (+ (* -1/720 (* x x)) 1/24) -1/720 (* x x) 1/24 1/2 (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (sin (+ (neg (+ eps x)) (/ (PI) 2))) (+ (neg (+ eps x)) (/ (PI) 2)) (neg (+ eps x)) (+ eps x) (/ (PI) 2) (PI) 2)

rewrite203.0ms (1.9%)

Memory
16.2MiB live, 205.0MiB allocated; 36ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06594128
07113906
137253906
084323795
Stop Event
iter limit
node limit
iter limit
Counts
224 → 370
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps)
(-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x))
(*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps)
(fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))
(*.f64 (sin.f64 x) eps)
(sin.f64 x)
x
eps
#s(literal 1/6 binary64)
(*.f64 #s(literal -1/2 binary64) (cos.f64 x))
#s(literal -1/2 binary64)
(cos.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(-.f64 (cos.f64 eps) #s(literal 1 binary64))
(cos.f64 eps)
#s(literal 1 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
(*.f64 (neg.f64 eps) (sin.f64 x))
(neg.f64 eps)
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64))
(*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x)
(*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x)
(fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64))
#s(literal -1/720 binary64)
(*.f64 x x)
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
(-.f64 (sin.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64)))) (cos.f64 x))
(sin.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64)))
(neg.f64 (+.f64 eps x))
(+.f64 eps x)
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
#s(literal 2 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos eps) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* -1 (* x (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1/2 (pow eps 2))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* eps (* x (- (* 1/6 (pow eps 2)) 1))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* 1/4 (* (pow eps 2) x)) (* eps (- (* 1/6 (pow eps 2)) 1)))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* eps (- (* 1/6 (pow eps 2)) 1)) (* x (+ (* 1/4 (pow eps 2)) (* eps (* x (+ 1/6 (* -1/36 (pow eps 2))))))))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* -1/2 eps)))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (* 1/6 (pow eps 2)) 1)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (+ (* 1/6 (pow eps 2)) (* 1/4 (* eps x))) 1)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (+ (* 1/6 (pow eps 2)) (* x (+ (* 1/4 eps) (* x (+ 1/6 (* -1/36 (pow eps 2))))))) 1)))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* -1/2 eps)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (+ (* -1/2 eps) (* 1/6 (* (pow eps 2) x)))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (+ (* -1/2 eps) (* x (+ (* 1/6 (pow eps 2)) (* 1/4 (* eps x)))))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (+ (* -1/2 eps) (* x (+ (* 1/6 (pow eps 2)) (* x (+ (* -1/36 (* (pow eps 2) x)) (* 1/4 eps))))))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 -1/2))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (- (* 1/6 (* eps x)) 1/2)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (- (* x (+ (* 1/6 eps) (* 1/4 x))) 1/2)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (- (* x (+ (* 1/6 eps) (* x (+ 1/4 (* -1/36 (* eps x)))))) 1/2)))
#s(approx (* (sin x) eps) #s(hole binary64 (* eps x)))
#s(approx (* (sin x) eps) #s(hole binary64 (* x (+ eps (* -1/6 (* eps (pow x 2)))))))
#s(approx (* (sin x) eps) #s(hole binary64 (* x (+ eps (* (pow x 2) (+ (* -1/6 eps) (* 1/120 (* eps (pow x 2)))))))))
#s(approx (* (sin x) eps) #s(hole binary64 (* x (+ eps (* (pow x 2) (+ (* -1/6 eps) (* (pow x 2) (+ (* -1/5040 (* eps (pow x 2))) (* 1/120 eps)))))))))
#s(approx (sin x) #s(hole binary64 x))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* -1/6 (pow x 2))))))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))))
#s(approx x #s(hole binary64 x))
#s(approx (* -1/2 (cos x)) #s(hole binary64 -1/2))
#s(approx (* -1/2 (cos x)) #s(hole binary64 (- (* 1/4 (pow x 2)) 1/2)))
#s(approx (* -1/2 (cos x)) #s(hole binary64 (- (* (pow x 2) (+ 1/4 (* -1/48 (pow x 2)))) 1/2)))
#s(approx (* -1/2 (cos x)) #s(hole binary64 (- (* (pow x 2) (+ 1/4 (* (pow x 2) (- (* 1/1440 (pow x 2)) 1/48)))) 1/2)))
#s(approx (cos x) #s(hole binary64 1))
#s(approx (cos x) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* -1 (* eps x))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* 1/6 (* eps (pow x 2)))))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps)))))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* (pow x 2) (+ (* 1/6 eps) (* (pow x 2) (+ (* -1/120 eps) (* 1/5040 (* eps (pow x 2)))))))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos eps)))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos eps) (* -1 (* x (sin eps))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos eps) (* x (- (* -1/2 (* x (cos eps))) (sin eps))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos eps) (* x (- (* x (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps))))) (sin eps))))))
#s(approx (+ x eps) #s(hole binary64 eps))
#s(approx (+ x eps) #s(hole binary64 (+ eps x)))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 1))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) #s(hole binary64 -1/2))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) #s(hole binary64 (- (* 1/24 (pow x 2)) 1/2)))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) #s(hole binary64 (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
#s(approx (* (* (+ (* -1/720 (* x x)) 1/24) x) x) #s(hole binary64 (* 1/24 (pow x 2))))
#s(approx (* (* (+ (* -1/720 (* x x)) 1/24) x) x) #s(hole binary64 (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2))))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) x) #s(hole binary64 (* 1/24 x)))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) x) #s(hole binary64 (* x (+ 1/24 (* -1/720 (pow x 2))))))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 1/24))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 (+ 1/24 (* -1/720 (pow x 2)))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) eps)) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* -1 (* x (cos (- (* 1/2 (PI)) eps))))) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* x (+ 1/2 (* -1/2 (sin (- (* 1/2 (PI)) eps)))))))) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* x (+ 1/2 (+ (* -1/2 (sin (- (* 1/2 (PI)) eps))) (* 1/6 (* x (cos (- (* 1/2 (PI)) eps)))))))))) 1)))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (sin (- (* 1/2 (PI)) eps))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (+ (sin (- (* 1/2 (PI)) eps)) (* -1 (* x (cos (- (* 1/2 (PI)) eps)))))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* -1/2 (* x (sin (- (* 1/2 (PI)) eps)))))))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* x (+ (* -1/2 (sin (- (* 1/2 (PI)) eps))) (* 1/6 (* x (cos (- (* 1/2 (PI)) eps)))))))))))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (- (* 1/2 (PI)) eps)))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (- (+ (* -1 x) (* 1/2 (PI))) eps)))
#s(approx (neg (+ eps x)) #s(hole binary64 (* -1 eps)))
#s(approx (neg (+ eps x)) #s(hole binary64 (- (* -1 x) eps)))
#s(approx (+ eps x) #s(hole binary64 eps))
#s(approx (+ eps x) #s(hole binary64 (+ eps x)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (+ eps x)) (cos x))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x)))))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))))
#s(approx (* (sin x) eps) #s(hole binary64 (* eps (sin x))))
#s(approx (sin x) #s(hole binary64 (sin x)))
#s(approx (* -1/2 (cos x)) #s(hole binary64 (* -1/2 (cos x))))
#s(approx (cos x) #s(hole binary64 (cos x)))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos (+ eps x))))
#s(approx (+ x eps) #s(hole binary64 x))
#s(approx (+ x eps) #s(hole binary64 (* x (+ 1 (/ eps x)))))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 (* -1/720 (pow x 6))))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/24 (/ 1 (pow x 2))) (+ 1/720 (/ 1/2 (pow x 4)))))))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (+ (* 1/24 (/ 1 (pow x 2))) (/ 1 (pow x 6))) (+ 1/720 (/ 1/2 (pow x 4)))))))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) #s(hole binary64 (* -1/720 (pow x 4))))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) #s(hole binary64 (* (pow x 4) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) #s(hole binary64 (* (pow x 4) (- (* 1/24 (/ 1 (pow x 2))) (+ 1/720 (/ 1/2 (pow x 4)))))))
#s(approx (* (* (+ (* -1/720 (* x x)) 1/24) x) x) #s(hole binary64 (* -1/720 (pow x 4))))
#s(approx (* (* (+ (* -1/720 (* x x)) 1/24) x) x) #s(hole binary64 (* (pow x 4) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) x) #s(hole binary64 (* -1/720 (pow x 3))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) x) #s(hole binary64 (* (pow x 3) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 (* -1/720 (pow x 2))))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 (* (pow x 2) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) (+ eps x))) (cos x))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (sin (- (* 1/2 (PI)) (+ eps x)))))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (* -1 x)))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (* x (- (* 1/2 (/ (PI) x)) (+ 1 (/ eps x))))))
#s(approx (neg (+ eps x)) #s(hole binary64 (* -1 x)))
#s(approx (neg (+ eps x)) #s(hole binary64 (* x (- (* -1 (/ eps x)) 1))))
#s(approx (+ eps x) #s(hole binary64 x))
#s(approx (+ eps x) #s(hole binary64 (* x (+ 1 (/ eps x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- eps (* -1 x))) (cos x))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos (- eps (* -1 x)))))
#s(approx (+ x eps) #s(hole binary64 (* -1 (* x (- (* -1 (/ eps x)) 1)))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) x) #s(hole binary64 (* -1 (* (pow x 3) (- 1/720 (* 1/24 (/ 1 (pow x 2))))))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (+ (* -1 x) (* 1/2 (PI))) eps)) (cos x))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (sin (- (+ (* -1 x) (* 1/2 (PI))) eps))))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (* -1 (* x (+ 1 (* -1 (/ (- (* 1/2 (PI)) eps) x)))))))
#s(approx (neg (+ eps x)) #s(hole binary64 (* -1 (* x (+ 1 (/ eps x))))))
#s(approx (+ eps x) #s(hole binary64 (* -1 (* x (- (* -1 (/ eps x)) 1)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* -1/2 (* eps (cos x))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* eps (+ (* -1 (sin x)) (* -1/2 (* eps (cos x)))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* eps (+ (* -1 (sin x)) (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x)))))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* -1 (sin x))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (- (* -1/2 (* eps (cos x))) (sin x))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* -1/2 (* eps (cos x)))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* -1/2 (cos x))))
#s(approx eps #s(hole binary64 eps))
#s(approx (- (cos eps) 1) #s(hole binary64 (* -1/2 (pow eps 2))))
#s(approx (- (cos eps) 1) #s(hole binary64 (* (pow eps 2) (- (* 1/24 (pow eps 2)) 1/2))))
#s(approx (- (cos eps) 1) #s(hole binary64 (* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* -1/720 (pow eps 2)))) 1/2))))
#s(approx (- (cos eps) 1) #s(hole binary64 (* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* (pow eps 2) (- (* 1/40320 (pow eps 2)) 1/720)))) 1/2))))
#s(approx (cos eps) #s(hole binary64 1))
#s(approx (cos eps) #s(hole binary64 (+ 1 (* -1/2 (pow eps 2)))))
#s(approx (cos eps) #s(hole binary64 (+ 1 (* (pow eps 2) (- (* 1/24 (pow eps 2)) 1/2)))))
#s(approx (cos eps) #s(hole binary64 (+ 1 (* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* -1/720 (pow eps 2)))) 1/2)))))
#s(approx (neg eps) #s(hole binary64 (* -1 eps)))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos x)))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos x) (* -1 (* eps (sin x))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos x) (* eps (- (* -1/2 (* eps (cos x))) (sin x))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (+ (cos x) (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) x)) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* -1 (* eps (cos (- (* 1/2 (PI)) x))))) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* -1/2 (* eps (sin (- (* 1/2 (PI)) x))))))) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* eps (+ (* -1/2 (sin (- (* 1/2 (PI)) x))) (* 1/6 (* eps (cos (- (* 1/2 (PI)) x))))))))) (cos x))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (sin (- (* 1/2 (PI)) x))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (+ (sin (- (* 1/2 (PI)) x)) (* -1 (* eps (cos (- (* 1/2 (PI)) x)))))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* -1/2 (* eps (sin (- (* 1/2 (PI)) x)))))))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* eps (+ (* -1/2 (sin (- (* 1/2 (PI)) x))) (* 1/6 (* eps (cos (- (* 1/2 (PI)) x)))))))))))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (- (* 1/2 (PI)) x)))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (- (+ (* -1 eps) (* 1/2 (PI))) x)))
#s(approx (neg (+ eps x)) #s(hole binary64 (- (* -1 eps) x)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* 1/6 (* (pow eps 3) (sin x)))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* (pow eps 3) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* (pow eps 3) (+ (* -1 (/ (sin x) (pow eps 2))) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x)))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* 1/6 (* (pow eps 2) (sin x)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* (pow eps 2) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* (pow eps 2) (+ (* -1 (/ (sin x) (pow eps 2))) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x)))))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* 1/6 (* (pow eps 2) (sin x)))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* (pow eps 2) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* 1/6 (* eps (sin x)))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* eps (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (- (cos eps) 1) #s(hole binary64 (- (cos eps) 1)))
#s(approx (cos eps) #s(hole binary64 (cos eps)))
#s(approx (+ x eps) #s(hole binary64 (* eps (+ 1 (/ x eps)))))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (* -1 eps)))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (* eps (- (* 1/2 (/ (PI) eps)) (+ 1 (/ x eps))))))
#s(approx (neg (+ eps x)) #s(hole binary64 (* eps (- (* -1 (/ x eps)) 1))))
#s(approx (+ eps x) #s(hole binary64 (* eps (+ 1 (/ x eps)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- x (* -1 eps))) (cos x))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1 (* (pow eps 3) (+ (* -1/6 (sin x)) (* 1/2 (/ (cos x) eps)))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1 (* (pow eps 3) (+ (* -1 (/ (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))) eps)) (* -1/6 (sin x)))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* (pow eps 2) (+ (* -1 (/ (+ (* 1/2 (cos x)) (/ (sin x) eps)) eps)) (* 1/6 (sin x))))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* -1 (* eps (+ (* -1/6 (sin x)) (* 1/2 (/ (cos x) eps)))))))
#s(approx (cos (+ x eps)) #s(hole binary64 (cos (- x (* -1 eps)))))
#s(approx (+ x eps) #s(hole binary64 (* -1 (* eps (- (* -1 (/ x eps)) 1)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (+ (* -1 eps) (* 1/2 (PI))) x)) (cos x))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) #s(hole binary64 (sin (- (+ (* -1 eps) (* 1/2 (PI))) x))))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) #s(hole binary64 (* -1 (* eps (+ 1 (* -1 (/ (- (* 1/2 (PI)) x) eps)))))))
#s(approx (neg (+ eps x)) #s(hole binary64 (* -1 (* eps (+ 1 (/ x eps))))))
#s(approx (+ eps x) #s(hole binary64 (* -1 (* eps (- (* -1 (/ x eps)) 1)))))
Outputs
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps)
(*.f64 eps (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64))) (fma.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps (sin.f64 x)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)))))
(-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x))
(*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps)
(*.f64 eps (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) eps))
(fma.f64 eps (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) (*.f64 eps (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64))))
(+.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) eps))
(+.f64 (*.f64 eps (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) (*.f64 eps (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))))
(/.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 (cos.f64 x) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 3 binary64)) #s(literal 1/216 binary64) (*.f64 #s(literal -1/8 binary64) (pow.f64 (cos.f64 x) #s(literal 3 binary64)))) (+.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))))))
(fma.f64 (*.f64 #s(literal 1/6 binary64) eps) (sin.f64 x) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))
(fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))
(fma.f64 (sin.f64 x) (*.f64 #s(literal 1/6 binary64) eps) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))
(fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)))
(fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 x) eps) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))
(fma.f64 (cos.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)))
(-.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) (*.f64 #s(literal 1/2 binary64) (cos.f64 x)))
(-.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) (*.f64 #s(literal -1/6 binary64) (*.f64 (sin.f64 x) eps)))
(+.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))
(+.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)))
(*.f64 (sin.f64 x) eps)
(*.f64 eps (sin.f64 x))
(sin.f64 x)
x
eps
#s(literal 1/6 binary64)
(*.f64 #s(literal -1/2 binary64) (cos.f64 x))
(*.f64 (cos.f64 x) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
(fma.f64 (sin.f64 x) #s(literal 0 binary64) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(sin.f64 (fma.f64 #s(literal -1 binary64) x (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 x (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 x)))
(cos.f64 (neg.f64 x))
(cos.f64 x)
(+.f64 (*.f64 (sin.f64 x) #s(literal 0 binary64)) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(/.f64 (neg.f64 (pow.f64 (sin.f64 eps) #s(literal 2 binary64))) (+.f64 (cos.f64 eps) #s(literal 1 binary64)))
(/.f64 (-.f64 (pow.f64 (cos.f64 eps) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (cos.f64 eps) (cos.f64 eps) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 eps) #s(literal 1 binary64)))))
(-.f64 (cos.f64 eps) #s(literal 1 binary64))
(fma.f64 (sin.f64 eps) #s(literal 0 binary64) (*.f64 (cos.f64 eps) #s(literal 1 binary64)))
(sin.f64 (fma.f64 #s(literal -1 binary64) eps (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 eps (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 eps)))
(cos.f64 (neg.f64 eps))
(cos.f64 eps)
(+.f64 (*.f64 (sin.f64 eps) #s(literal 0 binary64)) (*.f64 (cos.f64 eps) #s(literal 1 binary64)))
#s(literal 1 binary64)
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
(*.f64 (neg.f64 eps) (sin.f64 x))
(*.f64 (*.f64 (sin.f64 x) eps) #s(literal -1 binary64))
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 #s(literal -1 binary64) (*.f64 (sin.f64 x) eps))
(neg.f64 (*.f64 (sin.f64 x) eps))
(*.f64 #s(literal -1 binary64) eps)
(*.f64 eps #s(literal -1 binary64))
(neg.f64 eps)
(/.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (pow.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) #s(literal 2 binary64))) (+.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))))
(/.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (pow.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) #s(literal 3 binary64))) (+.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (pow.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) #s(literal 2 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))))))
(-.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
(fma.f64 (sin.f64 (+.f64 eps x)) #s(literal 0 binary64) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(fma.f64 (neg.f64 (sin.f64 (+.f64 eps x))) #s(literal 0 binary64) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 (+.f64 eps x)) (*.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 (+.f64 eps x)))))
(sin.f64 (+.f64 (+.f64 eps x) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 eps)) (neg.f64 (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 eps) (sin.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))
(cos.f64 (neg.f64 (neg.f64 (+.f64 eps x))))
(cos.f64 (neg.f64 (+.f64 eps x)))
(cos.f64 (+.f64 eps x))
(+.f64 (*.f64 (sin.f64 (+.f64 eps x)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 eps x))) (*.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 (+.f64 eps x)))))
(+.f64 (*.f64 (neg.f64 (sin.f64 (+.f64 eps x))) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 eps eps) (*.f64 x x)) (-.f64 eps x))
(/.f64 (-.f64 (*.f64 x x) (*.f64 eps eps)) (-.f64 x eps))
(/.f64 (+.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (fma.f64 eps eps (-.f64 (*.f64 x x) (*.f64 eps x))))
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 eps #s(literal 3 binary64))) (fma.f64 x x (-.f64 (*.f64 eps eps) (*.f64 eps x))))
(+.f64 eps x)
(+.f64 x eps)
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) x) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) x) x) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) x) x) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) x) x)))
(/.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)) #s(literal 1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) x) x) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) x) x) #s(literal 1 binary64)))))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)))) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) x) x) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) x) x)))))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) x) x #s(literal 1 binary64))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 x x)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) x) x) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) x) x))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x #s(literal 1/2 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)))))
(-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64))
(*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x)
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 x x))
(*.f64 (*.f64 x x) (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)))
(*.f64 x (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x))
(fma.f64 (*.f64 x x) #s(literal 1/24 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) (*.f64 x x)))
(fma.f64 (*.f64 x x) #s(literal 1/24 binary64) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) #s(literal -1/720 binary64))))
(fma.f64 #s(literal 1/24 binary64) (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) (*.f64 x x)))
(fma.f64 #s(literal 1/24 binary64) (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) #s(literal -1/720 binary64))))
(+.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) (*.f64 x x)))
(+.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) #s(literal -1/720 binary64))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x)
(*.f64 x (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)))
(fma.f64 #s(literal 1/24 binary64) x (*.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) x))
(fma.f64 #s(literal 1/24 binary64) x (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/720 binary64))))
(fma.f64 x #s(literal 1/24 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) x))
(fma.f64 x #s(literal 1/24 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/720 binary64))))
(+.f64 (*.f64 #s(literal 1/24 binary64) x) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) x))
(+.f64 (*.f64 #s(literal 1/24 binary64) x) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/720 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 2 binary64)) #s(literal 1/576 binary64)) (-.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 1/24 binary64)))
(/.f64 (-.f64 #s(literal 1/576 binary64) (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 x x) #s(literal -1/720 binary64))))
(/.f64 (fma.f64 #s(literal -1/373248000 binary64) (pow.f64 x #s(literal 6 binary64)) #s(literal 1/13824 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 1/24 binary64)))))
(/.f64 (+.f64 #s(literal 1/13824 binary64) (*.f64 #s(literal -1/373248000 binary64) (pow.f64 x #s(literal 6 binary64)))) (+.f64 #s(literal 1/576 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 x x) #s(literal -1/720 binary64))))))
(fma.f64 (*.f64 #s(literal -1/720 binary64) x) x #s(literal 1/24 binary64))
(fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64))
(fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64))
(-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 x x)))
(+.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 1/24 binary64))
(+.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 x x) #s(literal -1/720 binary64)))
#s(literal -1/720 binary64)
(*.f64 (neg.f64 (fabs.f64 x)) (neg.f64 (fabs.f64 x)))
(*.f64 (fabs.f64 (fabs.f64 x)) (fabs.f64 (fabs.f64 x)))
(*.f64 (exp.f64 (log.f64 x)) (exp.f64 (log.f64 x)))
(*.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)))
(*.f64 (fabs.f64 x) (fabs.f64 x))
(*.f64 (neg.f64 x) (neg.f64 x))
(*.f64 x x)
(pow.f64 (exp.f64 (log.f64 x)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 x) #s(literal 2 binary64))
(pow.f64 (neg.f64 x) #s(literal 2 binary64))
(pow.f64 (*.f64 x x) #s(literal 1 binary64))
(pow.f64 x #s(literal 2 binary64))
(fabs.f64 (*.f64 x x))
(exp.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))))
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 (+.f64 eps x)) (neg.f64 x)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (neg.f64 (+.f64 eps x)) (neg.f64 x)) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 (+.f64 eps x)) x) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (neg.f64 (+.f64 eps x)) x) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 eps x) (neg.f64 x)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (+.f64 eps x) (neg.f64 x)) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 (+.f64 eps x) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 x (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 (+.f64 eps x) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 x (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 x (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 x (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (pow.f64 (cos.f64 x) #s(literal 2 binary64))) (+.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(/.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (pow.f64 (cos.f64 x) #s(literal 3 binary64))) (+.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (fma.f64 (cos.f64 x) (cos.f64 x) (*.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(fma.f64 (sin.f64 (+.f64 eps x)) #s(literal 0 binary64) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(fma.f64 (neg.f64 (sin.f64 (+.f64 eps x))) #s(literal 0 binary64) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 (+.f64 eps x)) (*.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 (+.f64 eps x)))))
(sin.f64 (+.f64 (+.f64 eps x) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 eps)) (neg.f64 (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 eps) (sin.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))
(cos.f64 (neg.f64 (neg.f64 (+.f64 eps x))))
(cos.f64 (neg.f64 (+.f64 eps x)))
(cos.f64 (+.f64 eps x))
(+.f64 (*.f64 (sin.f64 (+.f64 eps x)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 eps x))) (*.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 (+.f64 eps x)))))
(+.f64 (*.f64 (neg.f64 (sin.f64 (+.f64 eps x))) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(/.f64 (-.f64 (pow.f64 (+.f64 eps x) #s(literal 2 binary64)) (pow.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) #s(literal 2 binary64))) (-.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(/.f64 (+.f64 (neg.f64 (pow.f64 (+.f64 eps x) #s(literal 3 binary64))) (pow.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (+.f64 eps x) #s(literal 2 binary64)) (-.f64 (pow.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) #s(literal 2 binary64)) (*.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))))))
(+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64)))
(+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (neg.f64 (+.f64 eps x)))
(neg.f64 (+.f64 eps x))
(fma.f64 #s(literal -1 binary64) eps (neg.f64 x))
(fma.f64 eps #s(literal -1 binary64) (neg.f64 x))
(+.f64 (neg.f64 eps) (neg.f64 x))
(/.f64 (-.f64 (*.f64 eps eps) (*.f64 x x)) (-.f64 eps x))
(/.f64 (-.f64 (*.f64 x x) (*.f64 eps eps)) (-.f64 x eps))
(/.f64 (+.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (fma.f64 eps eps (-.f64 (*.f64 x x) (*.f64 eps x))))
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 eps #s(literal 3 binary64))) (fma.f64 x x (-.f64 (*.f64 eps eps) (*.f64 eps x))))
(+.f64 eps x)
(+.f64 x eps)
(/.f64 (neg.f64 (PI.f64)) #s(literal -2 binary64))
(/.f64 (PI.f64) #s(literal 2 binary64))
(PI.f64)
#s(literal 2 binary64)
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (fma.f64 (neg.f64 x) (sin.f64 eps) (cos.f64 eps)) #s(literal 1 binary64)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (cos.f64 eps) #s(literal -1/2 binary64) #s(literal 1/2 binary64)) x) (sin.f64 eps)) x (cos.f64 eps)) #s(literal 1 binary64)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (fma.f64 (-.f64 (*.f64 (+.f64 (fma.f64 (*.f64 (sin.f64 eps) x) #s(literal 1/6 binary64) (*.f64 (cos.f64 eps) #s(literal -1/2 binary64))) #s(literal 1/2 binary64)) x) (sin.f64 eps)) x (cos.f64 eps)) #s(literal 1 binary64)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) x) #s(literal 1/4 binary64) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x) eps (*.f64 #s(literal 1/4 binary64) (*.f64 eps eps))) x (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (*.f64 eps x) #s(literal 1/4 binary64) (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x (*.f64 #s(literal 1/4 binary64) eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (*.f64 #s(literal -1/2 binary64) eps))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (fma.f64 (*.f64 (*.f64 eps eps) x) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (fma.f64 (fma.f64 (*.f64 eps x) #s(literal 1/4 binary64) (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/36 binary64) (*.f64 eps eps)) x (*.f64 #s(literal 1/4 binary64) eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(literal -1/2 binary64))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (*.f64 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/36 binary64) #s(literal 1/4 binary64)) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64)))
#s(approx (* (sin x) eps) (*.f64 eps x))
#s(approx (* (sin x) eps) (*.f64 (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/6 binary64) eps) x))
#s(approx (* (sin x) eps) (*.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal -1/6 binary64) eps)) (*.f64 x x) eps) x))
#s(approx (* (sin x) eps) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal 1/120 binary64) eps)) (*.f64 x x) (*.f64 #s(literal -1/6 binary64) eps)) (*.f64 x x) eps) x))
#s(approx (sin x) x)
#s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))
#s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))
#s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))
#s(approx x x)
#s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))
#s(approx (* -1/2 (cos x)) (-.f64 (*.f64 (*.f64 x x) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
#s(approx (* -1/2 (cos x)) (-.f64 (*.f64 (fma.f64 #s(literal -1/48 binary64) (*.f64 x x) #s(literal 1/4 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)))
#s(approx (* -1/2 (cos x)) (-.f64 (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/1440 binary64) (*.f64 x x)) #s(literal 1/48 binary64)) (*.f64 x x) #s(literal 1/4 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)))
#s(approx (cos x) #s(literal 1 binary64))
#s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 eps) x))
#s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/6 binary64) (neg.f64 eps)) x))
#s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal 1/6 binary64) eps)) (*.f64 x x) (neg.f64 eps)) x))
#s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal -1/120 binary64) eps)) (*.f64 x x) (*.f64 #s(literal 1/6 binary64) eps)) (*.f64 x x) (neg.f64 eps)) x))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos.f64 eps))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (fma.f64 (neg.f64 x) (sin.f64 eps) (cos.f64 eps)))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 eps) x) #s(literal -1/2 binary64)) (sin.f64 eps)) x (cos.f64 eps)))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 eps) x) #s(literal 1/6 binary64) (*.f64 (cos.f64 eps) #s(literal -1/2 binary64))) x) (sin.f64 eps)) x (cos.f64 eps)))
#s(approx (+ eps x) eps)
#s(approx (+ eps x) (+.f64 eps x))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) #s(literal 1 binary64))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) #s(literal -1/2 binary64))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)))
#s(approx (* (* (+ (* -1/720 (* x x)) 1/24) x) x) (*.f64 (*.f64 x x) #s(literal 1/24 binary64)))
#s(approx (* (* (+ (* -1/720 (* x x)) 1/24) x) x) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) x) (*.f64 #s(literal 1/24 binary64) x))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(literal 1/24 binary64))
#s(approx (+ (* -1/720 (* x x)) 1/24) (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)))
#s(approx (* x x) (*.f64 x x))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps)) #s(literal 1 binary64)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (fma.f64 (neg.f64 x) (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps)) (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps))) #s(literal 1 binary64)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (fma.f64 (fma.f64 (fma.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps)) #s(literal -1/2 binary64) #s(literal 1/2 binary64)) x (neg.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps)))) x (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps))) #s(literal 1 binary64)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (fma.f64 (fma.f64 (+.f64 (fma.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps)) #s(literal -1/2 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 #s(literal 1/6 binary64) x) (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps)))) x (neg.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps)))) x (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps))) #s(literal 1 binary64)))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps)))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (fma.f64 (neg.f64 x) (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps)) (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) x) (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps)) (neg.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps)))) x (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) x) (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps)) (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps)) #s(literal -1/2 binary64))) x (neg.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps)))) x (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps))))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (neg.f64 x)) eps))
#s(approx (neg (+ eps x)) (neg.f64 eps))
#s(approx (neg (+ eps x)) (-.f64 (neg.f64 x) eps))
#s(approx (+ eps x) eps)
#s(approx (+ eps x) (+.f64 eps x))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))))
#s(approx (* (sin x) eps) (*.f64 (sin.f64 x) eps))
#s(approx (sin x) (sin.f64 x))
#s(approx (* -1/2 (cos x)) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))
#s(approx (cos x) (cos.f64 x))
#s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos.f64 (+.f64 eps x)))
#s(approx (+ eps x) x)
#s(approx (+ eps x) (*.f64 (+.f64 (/.f64 eps x) #s(literal 1 binary64)) x))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal -1/720 binary64)))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64)) #s(literal 1/720 binary64))))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) (-.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64)) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/2 binary64) (pow.f64 x #s(literal 4 binary64))))))
#s(approx (+ (* (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) (-.f64 (-.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64) (pow.f64 x #s(literal -6 binary64))) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/2 binary64) (pow.f64 x #s(literal 4 binary64))))))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/720 binary64)))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64)) #s(literal 1/720 binary64))))
#s(approx (- (* (* (+ (* -1/720 (* x x)) 1/24) x) x) 1/2) (*.f64 (-.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64)) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/2 binary64) (pow.f64 x #s(literal 4 binary64)))) (pow.f64 x #s(literal 4 binary64))))
#s(approx (* (* (+ (* -1/720 (* x x)) 1/24) x) x) (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/720 binary64)))
#s(approx (* (* (+ (* -1/720 (* x x)) 1/24) x) x) (*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64)) #s(literal 1/720 binary64))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) x) (*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal -1/720 binary64)))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) x) (*.f64 (pow.f64 x #s(literal 3 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64)) #s(literal 1/720 binary64))))
#s(approx (+ (* -1/720 (* x x)) 1/24) (*.f64 (*.f64 x x) #s(literal -1/720 binary64)))
#s(approx (+ (* -1/720 (* x x)) 1/24) (*.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64)) #s(literal 1/720 binary64)) (*.f64 x x)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (sin.f64 (-.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps) x)) (cos.f64 x)))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (sin.f64 (-.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps) x)))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (neg.f64 x))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (*.f64 (-.f64 (-.f64 (*.f64 (/.f64 (PI.f64) x) #s(literal 1/2 binary64)) #s(literal 1 binary64)) (/.f64 eps x)) x))
#s(approx (neg (+ eps x)) (neg.f64 x))
#s(approx (neg (+ eps x)) (*.f64 (-.f64 (/.f64 (neg.f64 eps) x) #s(literal 1 binary64)) x))
#s(approx (+ eps x) x)
#s(approx (+ eps x) (*.f64 (+.f64 (/.f64 eps x) #s(literal 1 binary64)) x))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (cos.f64 (-.f64 eps (neg.f64 x))) (cos.f64 x)))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos.f64 (-.f64 eps (neg.f64 x))))
#s(approx (+ eps x) (*.f64 (neg.f64 x) (-.f64 (/.f64 (neg.f64 eps) x) #s(literal 1 binary64))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) x) (*.f64 (pow.f64 (neg.f64 x) #s(literal 3 binary64)) (-.f64 #s(literal 1/720 binary64) (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (neg.f64 x)) eps)) (cos.f64 x)))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (neg.f64 x)) eps)))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (*.f64 (neg.f64 x) (fma.f64 (/.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) eps) x) #s(literal -1 binary64) #s(literal 1 binary64))))
#s(approx (neg (+ eps x)) (*.f64 (neg.f64 x) (+.f64 (/.f64 eps x) #s(literal 1 binary64))))
#s(approx (+ eps x) (*.f64 (neg.f64 x) (-.f64 (/.f64 (neg.f64 eps) x) #s(literal 1 binary64))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) eps) (cos.f64 x) (*.f64 (sin.f64 x) #s(literal 1/6 binary64))) eps (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (neg.f64 (sin.f64 x))) eps))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps (neg.f64 (sin.f64 x))) eps))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (neg.f64 (sin.f64 x)))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))
#s(approx eps eps)
#s(approx (- (cos eps) 1) (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))
#s(approx (- (cos eps) 1) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 eps eps)))
#s(approx (- (cos eps) 1) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 eps eps) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 eps eps)) #s(literal 1/2 binary64)) (*.f64 eps eps)))
#s(approx (- (cos eps) 1) (*.f64 (-.f64 (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/40320 binary64) (*.f64 eps eps)) #s(literal 1/720 binary64)) (*.f64 eps eps) #s(literal 1/24 binary64)) (*.f64 eps eps)) #s(literal 1/2 binary64)) (*.f64 eps eps)))
#s(approx (cos eps) #s(literal 1 binary64))
#s(approx (cos eps) (fma.f64 (*.f64 eps eps) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos eps) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 eps eps) #s(literal 1 binary64)))
#s(approx (cos eps) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 eps eps) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 eps eps)) #s(literal 1/2 binary64)) (*.f64 eps eps) #s(literal 1 binary64)))
#s(approx (neg eps) (neg.f64 eps))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos.f64 x))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (fma.f64 (neg.f64 eps) (sin.f64 x) (cos.f64 x)))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps (cos.f64 x)))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps (cos.f64 x)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x)) (cos.f64 x)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (fma.f64 (neg.f64 eps) (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x)) (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x))) (cos.f64 x)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x)) eps) #s(literal -1/2 binary64) (neg.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x)))) eps (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x))) (cos.f64 x)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (fma.f64 (fma.f64 (fma.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x)) #s(literal -1/2 binary64) (*.f64 (*.f64 #s(literal 1/6 binary64) eps) (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x)))) eps (neg.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x)))) eps (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x))) (cos.f64 x)))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x)))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (fma.f64 (neg.f64 eps) (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x)) (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (fma.f64 (fma.f64 (*.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x)) eps) #s(literal -1/2 binary64) (neg.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x)))) eps (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (fma.f64 (fma.f64 (fma.f64 (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x)) #s(literal -1/2 binary64) (*.f64 (*.f64 #s(literal 1/6 binary64) eps) (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x)))) eps (neg.f64 (cos.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x)))) eps (sin.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x))))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (neg.f64 eps)) x))
#s(approx (neg (+ eps x)) (-.f64 (neg.f64 eps) x))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (*.f64 #s(literal 1/6 binary64) (pow.f64 eps #s(literal 3 binary64))) (sin.f64 x)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (*.f64 (sin.f64 x) #s(literal 1/6 binary64))) (pow.f64 eps #s(literal 3 binary64))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (fma.f64 (/.f64 (sin.f64 x) (*.f64 eps eps)) #s(literal -1 binary64) (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (*.f64 (sin.f64 x) #s(literal 1/6 binary64)))) (pow.f64 eps #s(literal 3 binary64))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) (sin.f64 x)))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (*.f64 (sin.f64 x) #s(literal 1/6 binary64))) (*.f64 eps eps)))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 (fma.f64 (/.f64 (sin.f64 x) (*.f64 eps eps)) #s(literal -1 binary64) (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (*.f64 (sin.f64 x) #s(literal 1/6 binary64)))) (*.f64 eps eps)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (*.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) (sin.f64 x)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (*.f64 (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (*.f64 (sin.f64 x) #s(literal 1/6 binary64))) (*.f64 eps eps)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (*.f64 (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (*.f64 (sin.f64 x) #s(literal 1/6 binary64))) eps))
#s(approx (- (cos eps) 1) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
#s(approx (cos eps) (cos.f64 eps))
#s(approx (+ eps x) (*.f64 (+.f64 (/.f64 x eps) #s(literal 1 binary64)) eps))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (neg.f64 eps))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (*.f64 (-.f64 (-.f64 (*.f64 (/.f64 (PI.f64) eps) #s(literal 1/2 binary64)) #s(literal 1 binary64)) (/.f64 x eps)) eps))
#s(approx (neg (+ eps x)) (*.f64 (-.f64 (/.f64 (neg.f64 x) eps) #s(literal 1 binary64)) eps))
#s(approx (+ eps x) (*.f64 (+.f64 (/.f64 x eps) #s(literal 1 binary64)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (cos.f64 (-.f64 x (neg.f64 eps))) (cos.f64 x)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (pow.f64 (neg.f64 eps) #s(literal 3 binary64)) (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) (sin.f64 x)))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (pow.f64 (neg.f64 eps) #s(literal 3 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 x) (neg.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (/.f64 (neg.f64 (sin.f64 x)) eps)) eps)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 (fma.f64 (sin.f64 x) #s(literal 1/6 binary64) (neg.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (cos.f64 x) (/.f64 (sin.f64 x) eps)) eps))) (*.f64 eps eps)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (*.f64 (neg.f64 eps) (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) (sin.f64 x)))))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos.f64 (-.f64 x (neg.f64 eps))))
#s(approx (+ eps x) (*.f64 (neg.f64 eps) (-.f64 (/.f64 (neg.f64 x) eps) #s(literal 1 binary64))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (neg.f64 eps)) x)) (cos.f64 x)))
#s(approx (sin (+ (neg (+ eps x)) (/ (PI) 2))) (sin.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (neg.f64 eps)) x)))
#s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (*.f64 (neg.f64 eps) (fma.f64 (/.f64 (-.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64)) x) eps) #s(literal -1 binary64) #s(literal 1 binary64))))
#s(approx (neg (+ eps x)) (*.f64 (neg.f64 eps) (+.f64 (/.f64 x eps) #s(literal 1 binary64))))
#s(approx (+ eps x) (*.f64 (neg.f64 eps) (-.f64 (/.f64 (neg.f64 x) eps) #s(literal 1 binary64))))

eval51.0ms (0.5%)

Memory
11.7MiB live, 101.5MiB allocated; 16ms collecting garbage
Compiler

Compiled 11 975 to 1 911 computations (84% saved)

prune25.0ms (0.2%)

Memory
11.4MiB live, 57.9MiB allocated; 5ms collecting garbage
Pruning

22 alts after pruning (19 fresh and 3 done)

PrunedKeptTotal
New39916415
Fresh336
Picked325
Done011
Total40522427
Accuracy
100.0%
Counts
427 → 22
Alt Table
Click to see full alt table
StatusAccuracyProgram
51.4%
(-.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
51.5%
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
50.5%
(-.f64 (sin.f64 (+.f64 (+.f64 eps x) (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
51.4%
(-.f64 (sin.f64 #s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (neg.f64 eps)) x))) (cos.f64 x))
51.3%
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
50.5%
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
80.8%
(*.f64 (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64)))) #s(literal -2 binary64))
99.2%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
49.9%
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
99.0%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
98.7%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(literal -1/2 binary64)) eps) (sin.f64 x)) eps))
78.1%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
77.7%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
77.7%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
77.6%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
77.3%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
98.2%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x (*.f64 #s(literal 1/4 binary64) eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
97.7%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (*.f64 eps x) #s(literal 1/4 binary64) (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
97.7%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
51.0%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
98.4%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x) eps (*.f64 #s(literal 1/4 binary64) (*.f64 eps eps))) x (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
97.8%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
Compiler

Compiled 1 199 to 799 computations (33.4% saved)

series56.0ms (0.5%)

Memory
3.2MiB live, 98.6MiB allocated; 40ms collecting garbage
Counts
46 → 199
Calls
Call 1
Inputs
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps)
(-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x))
(*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64))
(*.f64 (cos.f64 x) eps)
(cos.f64 x)
x
eps
#s(literal -1/2 binary64)
(sin.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
(-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64))
#s(approx (cos eps) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
(*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps)
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
(fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))
(-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64))
(*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))
(*.f64 eps eps)
#s(literal 1/6 binary64)
(*.f64 #s(literal -1/2 binary64) eps)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
(*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x)))
(neg.f64 eps)
#s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x)
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64))
(-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64))
(*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x))
(fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64))
#s(literal -1/5040 binary64)
(*.f64 x x)
#s(literal 1/120 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps)
(-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x))
(*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps)
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64)))
(-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))
(*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x)
(fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps))
#s(literal 1/4 binary64)
(*.f64 #s(literal 1/6 binary64) eps)
#s(literal 1/2 binary64)
Outputs
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) eps)) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* -1 (* x (cos (- (* 1/2 (PI)) eps))))) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* x (+ 1/2 (* -1/2 (sin (- (* 1/2 (PI)) eps)))))))) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* x (+ 1/2 (+ (* -1/2 (sin (- (* 1/2 (PI)) eps))) (* 1/6 (* x (cos (- (* 1/2 (PI)) eps)))))))))) 1)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* -1/2 (pow eps 2))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (+ (* -1 (* eps x)) (* -1/2 (pow eps 2)))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* 1/4 (* (pow eps 2) x)))))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* x (+ (* 1/6 (* eps x)) (* 1/4 (pow eps 2)))))))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1/2 eps)))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (+ (* -1 x) (* -1/2 eps))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (* 1/4 (* eps x)) 1)))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (* x (+ (* 1/6 x) (* 1/4 eps))) 1)))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (* -1/2 eps)))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (+ (* -1/2 eps) (* 1/4 (* eps (pow x 2))))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (+ (* -1/2 eps) (* (pow x 2) (+ (* -1/48 (* eps (pow x 2))) (* 1/4 eps))))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (+ (* -1/2 eps) (* (pow x 2) (+ (* 1/4 eps) (* (pow x 2) (+ (* -1/48 eps) (* 1/1440 (* eps (pow x 2))))))))))
#s(approx (* (cos x) eps) #s(hole binary64 eps))
#s(approx (* (cos x) eps) #s(hole binary64 (+ eps (* -1/2 (* eps (pow x 2))))))
#s(approx (* (cos x) eps) #s(hole binary64 (+ eps (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2))))))))
#s(approx (* (cos x) eps) #s(hole binary64 (+ eps (* (pow x 2) (+ (* -1/2 eps) (* (pow x 2) (+ (* -1/720 (* eps (pow x 2))) (* 1/24 eps))))))))
#s(approx (cos x) #s(hole binary64 1))
#s(approx (cos x) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))))
#s(approx x #s(hole binary64 x))
#s(approx (sin x) #s(hole binary64 x))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* -1/6 (pow x 2))))))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos eps) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* -1 (* x (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1/2 (pow eps 2))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* eps (* x (- (* 1/6 (pow eps 2)) 1))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* 1/4 (* (pow eps 2) x)) (* eps (- (* 1/6 (pow eps 2)) 1)))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* eps (- (* 1/6 (pow eps 2)) 1)) (* x (+ (* 1/4 (pow eps 2)) (* eps (* x (+ 1/6 (* -1/36 (pow eps 2))))))))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* -1/2 eps)))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (* 1/6 (pow eps 2)) 1)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (+ (* 1/6 (pow eps 2)) (* 1/4 (* eps x))) 1)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (+ (* 1/6 (pow eps 2)) (* x (+ (* 1/4 eps) (* x (+ 1/6 (* -1/36 (pow eps 2))))))) 1)))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* -1/2 eps)))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (* 1/6 (pow eps 2)) 1)))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* -1 (* eps x))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* 1/6 (* eps (pow x 2)))))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps)))))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* (pow x 2) (+ (* 1/6 eps) (* (pow x 2) (+ (* -1/120 eps) (* 1/5040 (* eps (pow x 2)))))))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 x))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* x (+ 1 (* -1/6 (pow x 2))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 1))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (+ 1 (* -1/6 (pow x 2)))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6)))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6)))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 -1/6))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (- (* 1/120 (pow x 2)) 1/6)))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6)))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* 1/120 (pow x 2))))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2))))))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 1/120))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 (+ 1/120 (* -1/5040 (pow x 2)))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* -1/2 eps)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (+ (* -1/2 eps) (* 1/6 (* (pow eps 2) x)))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (+ (* -1/2 eps) (* x (+ (* 1/6 (pow eps 2)) (* 1/4 (* eps x)))))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (+ (* -1/2 eps) (* x (+ (* 1/6 (pow eps 2)) (* x (+ (* -1/36 (* (pow eps 2) x)) (* 1/4 eps))))))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 -1/2))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (- (* 1/6 (* eps x)) 1/2)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (- (* x (+ (* 1/6 eps) (* 1/4 x))) 1/2)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (- (* x (+ (* 1/6 eps) (* x (+ 1/4 (* -1/36 (* eps x)))))) 1/2)))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 -1/2))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (- (* 1/6 (* eps x)) 1/2)))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (- (* x (+ (* 1/6 eps) (* 1/4 x))) 1/2)))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) #s(hole binary64 (* 1/6 (* eps x))))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) #s(hole binary64 (* x (+ (* 1/6 eps) (* 1/4 x)))))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) #s(hole binary64 (* 1/6 eps)))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) #s(hole binary64 (+ (* 1/6 eps) (* 1/4 x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) (+ eps x))) (cos x))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* eps (- (* -1/2 (* eps (cos x))) (sin x)))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (- (* -1/2 (* eps (cos x))) (sin x))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (* -1/2 (* eps (cos x)))))
#s(approx (* (cos x) eps) #s(hole binary64 (* eps (cos x))))
#s(approx (cos x) #s(hole binary64 (cos x)))
#s(approx (sin x) #s(hole binary64 (sin x)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (+ eps x)) (cos x))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* x (- (* 1/6 (pow eps 2)) 1))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* x (- (+ (* -1/2 (/ eps x)) (* 1/6 (pow eps 2))) 1))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1/5040 (pow x 7))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* (pow x 7) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* (pow x 7) (- (* 1/120 (/ 1 (pow x 2))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* (pow x 7) (- (+ (* 1/120 (/ 1 (pow x 2))) (/ 1 (pow x 6))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* -1/5040 (pow x 6))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/120 (/ 1 (pow x 2))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (+ (* 1/120 (/ 1 (pow x 2))) (/ 1 (pow x 6))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (* -1/5040 (pow x 4))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (* (pow x 4) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (* (pow x 4) (- (* 1/120 (/ 1 (pow x 2))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* -1/5040 (pow x 4))))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* (pow x 4) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 (* -1/5040 (pow x 2))))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 (* (pow x 2) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x)))))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (* 1/4 (pow x 2))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (* (pow x 2) (+ 1/4 (* 1/6 (/ eps x))))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (* (pow x 2) (- (+ 1/4 (* 1/6 (/ eps x))) (/ 1/2 (pow x 2))))))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) #s(hole binary64 (* 1/4 (pow x 2))))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) #s(hole binary64 (* (pow x 2) (+ 1/4 (* 1/6 (/ eps x))))))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) #s(hole binary64 (* 1/4 x)))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) #s(hole binary64 (* x (+ 1/4 (* 1/6 (/ eps x))))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (+ (* -1 x) (* 1/2 (PI))) eps)) (cos x))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- eps (* -1 x))) (cos x))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* -1 (* x (+ (* -1 (- (* 1/6 (pow eps 2)) 1)) (* 1/2 (/ eps x)))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1 (* (pow x 7) (- 1/5040 (* 1/120 (/ 1 (pow x 2))))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1 (* (pow x 7) (- (+ 1/5040 (/ 1/6 (pow x 4))) (* 1/120 (/ 1 (pow x 2))))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1 (* (pow x 7) (- (+ 1/5040 (/ 1/6 (pow x 4))) (+ (* 1/120 (/ 1 (pow x 2))) (/ 1 (pow x 6))))))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (* (pow x 2) (+ 1/4 (* -1 (/ (+ (* -1/6 eps) (* 1/2 (/ 1 x))) x))))))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) #s(hole binary64 (* -1 (* x (- (* -1/6 (/ eps x)) 1/4)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) x)) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* -1 (* eps (cos (- (* 1/2 (PI)) x))))) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* -1/2 (* eps (sin (- (* 1/2 (PI)) x))))))) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* eps (+ (* -1/2 (sin (- (* 1/2 (PI)) x))) (* 1/6 (* eps (cos (- (* 1/2 (PI)) x))))))))) (cos x))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* eps (+ (* -1 (sin x)) (* -1/2 (* eps (cos x)))))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1 (sin x))))
#s(approx eps #s(hole binary64 eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* -1/2 (* eps (cos x))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))))
#s(approx (- (cos eps) 1) #s(hole binary64 (* -1/2 (pow eps 2))))
#s(approx (- (cos eps) 1) #s(hole binary64 (* (pow eps 2) (- (* 1/24 (pow eps 2)) 1/2))))
#s(approx (- (cos eps) 1) #s(hole binary64 (* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* -1/720 (pow eps 2)))) 1/2))))
#s(approx (- (cos eps) 1) #s(hole binary64 (* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* (pow eps 2) (- (* 1/40320 (pow eps 2)) 1/720)))) 1/2))))
#s(approx (cos eps) #s(hole binary64 1))
#s(approx (cos eps) #s(hole binary64 (+ 1 (* -1/2 (pow eps 2)))))
#s(approx (cos eps) #s(hole binary64 (+ 1 (* (pow eps 2) (- (* 1/24 (pow eps 2)) 1/2)))))
#s(approx (cos eps) #s(hole binary64 (+ 1 (* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* -1/720 (pow eps 2)))) 1/2)))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* eps (+ (* -1 (sin x)) (* -1/2 (* eps (cos x)))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* eps (+ (* -1 (sin x)) (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x)))))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* -1 (sin x))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (- (* -1/2 (* eps (cos x))) (sin x))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* -1 x)))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (+ (* -1 x) (* -1/2 eps))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (+ (* -1 x) (* eps (- (* 1/6 (* eps x)) 1/2)))))
#s(approx (- (* (* eps eps) 1/6) 1) #s(hole binary64 -1))
#s(approx (- (* (* eps eps) 1/6) 1) #s(hole binary64 (- (* 1/6 (pow eps 2)) 1)))
#s(approx (* (* eps eps) 1/6) #s(hole binary64 (* 1/6 (pow eps 2))))
#s(approx (* eps eps) #s(hole binary64 (pow eps 2)))
#s(approx (* -1/2 eps) #s(hole binary64 (* -1/2 eps)))
#s(approx (neg eps) #s(hole binary64 (* -1 eps)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* -1/2 (* eps (cos x)))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* -1/2 (cos x))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (- (* 1/4 (pow x 2)) 1/2)))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (- (+ (* 1/6 (* eps x)) (* 1/4 (pow x 2))) 1/2)))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) #s(hole binary64 (+ (* 1/6 (* eps x)) (* 1/4 (pow x 2)))))
#s(approx (* 1/6 eps) #s(hole binary64 (* 1/6 eps)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* -1/2 (* (pow eps 2) (cos x)))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* (pow eps 2) (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1/2 (* eps (cos x)))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* eps (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))))))
#s(approx (- (cos eps) 1) #s(hole binary64 (- (cos eps) 1)))
#s(approx (cos eps) #s(hole binary64 (cos eps)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* 1/6 (* (pow eps 3) (sin x)))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* (pow eps 3) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* (pow eps 3) (+ (* -1 (/ (sin x) (pow eps 2))) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x)))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* 1/6 (* (pow eps 2) (sin x)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* (pow eps 2) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* (pow eps 2) (+ (* -1 (/ (sin x) (pow eps 2))) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x)))))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* 1/6 (* (pow eps 2) x))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* (pow eps 2) (- (* 1/6 x) (* 1/2 (/ 1 eps))))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* (pow eps 2) (- (+ (* -1 (/ x (pow eps 2))) (* 1/6 x)) (* 1/2 (/ 1 eps))))))
#s(approx (- (* (* eps eps) 1/6) 1) #s(hole binary64 (* 1/6 (pow eps 2))))
#s(approx (- (* (* eps eps) 1/6) 1) #s(hole binary64 (* (pow eps 2) (- 1/6 (/ 1 (pow eps 2))))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* 1/6 (* (pow eps 2) (sin x)))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* (pow eps 2) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* 1/6 (* eps (sin x)))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* eps (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (* 1/6 (* eps x))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (* eps (- (+ (* 1/6 x) (* 1/4 (/ (pow x 2) eps))) (* 1/2 (/ 1 eps))))))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) #s(hole binary64 (* eps (+ (* 1/6 x) (* 1/4 (/ (pow x 2) eps))))))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) #s(hole binary64 (* eps (+ 1/6 (* 1/4 (/ x eps))))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (+ (* -1 eps) (* 1/2 (PI))) x)) (cos x))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1 (* eps (+ (* 1/2 (cos x)) (/ (sin x) eps))))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- x (* -1 eps))) (cos x))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1 (* (pow eps 3) (+ (* -1/6 (sin x)) (* 1/2 (/ (cos x) eps)))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1 (* (pow eps 3) (+ (* -1 (/ (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))) eps)) (* -1/6 (sin x)))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* (pow eps 2) (+ (* -1 (/ (+ (* 1/2 (cos x)) (/ (sin x) eps)) eps)) (* 1/6 (sin x))))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* (pow eps 2) (+ (* -1 (/ (+ 1/2 (/ x eps)) eps)) (* 1/6 x)))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* -1 (* eps (+ (* -1/6 (sin x)) (* 1/2 (/ (cos x) eps)))))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (* -1 (* eps (+ (* -1 (/ (- (* 1/4 (pow x 2)) 1/2) eps)) (* -1/6 x))))))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) #s(hole binary64 (* -1 (* eps (+ (* -1/4 (/ (pow x 2) eps)) (* -1/6 x))))))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) #s(hole binary64 (* -1 (* eps (- (* -1/4 (/ x eps)) 1/6)))))
Calls

6 calls:

TimeVariablePointExpression
14.0ms
eps
@inf
((- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (- (* (* (cos x) eps) -1/2) (sin x)) (* (* (cos x) eps) -1/2) (* (cos x) eps) (cos x) x eps -1/2 (sin x) (- (cos (+ x eps)) (cos x)) (- (cos eps) 1) (cos eps) 1 (- (cos (+ x eps)) (cos x)) (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (- (* (* eps eps) 1/6) 1) (* (* eps eps) 1/6) (* eps eps) 1/6 (* -1/2 eps) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (sin x) (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (+ (* -1/5040 (* x x)) 1/120) -1/5040 (* x x) 1/120 (- (cos (+ x eps)) (cos x)) (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (* (+ (* 1/4 x) (* 1/6 eps)) x) (+ (* 1/4 x) (* 1/6 eps)) 1/4 (* 1/6 eps) 1/2)
14.0ms
x
@inf
((- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (- (* (* (cos x) eps) -1/2) (sin x)) (* (* (cos x) eps) -1/2) (* (cos x) eps) (cos x) x eps -1/2 (sin x) (- (cos (+ x eps)) (cos x)) (- (cos eps) 1) (cos eps) 1 (- (cos (+ x eps)) (cos x)) (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (- (* (* eps eps) 1/6) 1) (* (* eps eps) 1/6) (* eps eps) 1/6 (* -1/2 eps) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (sin x) (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (+ (* -1/5040 (* x x)) 1/120) -1/5040 (* x x) 1/120 (- (cos (+ x eps)) (cos x)) (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (* (+ (* 1/4 x) (* 1/6 eps)) x) (+ (* 1/4 x) (* 1/6 eps)) 1/4 (* 1/6 eps) 1/2)
9.0ms
eps
@-inf
((- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (- (* (* (cos x) eps) -1/2) (sin x)) (* (* (cos x) eps) -1/2) (* (cos x) eps) (cos x) x eps -1/2 (sin x) (- (cos (+ x eps)) (cos x)) (- (cos eps) 1) (cos eps) 1 (- (cos (+ x eps)) (cos x)) (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (- (* (* eps eps) 1/6) 1) (* (* eps eps) 1/6) (* eps eps) 1/6 (* -1/2 eps) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (sin x) (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (+ (* -1/5040 (* x x)) 1/120) -1/5040 (* x x) 1/120 (- (cos (+ x eps)) (cos x)) (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (* (+ (* 1/4 x) (* 1/6 eps)) x) (+ (* 1/4 x) (* 1/6 eps)) 1/4 (* 1/6 eps) 1/2)
5.0ms
x
@-inf
((- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (- (* (* (cos x) eps) -1/2) (sin x)) (* (* (cos x) eps) -1/2) (* (cos x) eps) (cos x) x eps -1/2 (sin x) (- (cos (+ x eps)) (cos x)) (- (cos eps) 1) (cos eps) 1 (- (cos (+ x eps)) (cos x)) (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (- (* (* eps eps) 1/6) 1) (* (* eps eps) 1/6) (* eps eps) 1/6 (* -1/2 eps) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (sin x) (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (+ (* -1/5040 (* x x)) 1/120) -1/5040 (* x x) 1/120 (- (cos (+ x eps)) (cos x)) (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (* (+ (* 1/4 x) (* 1/6 eps)) x) (+ (* 1/4 x) (* 1/6 eps)) 1/4 (* 1/6 eps) 1/2)
4.0ms
eps
@0
((- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (- (* (* (cos x) eps) -1/2) (sin x)) (* (* (cos x) eps) -1/2) (* (cos x) eps) (cos x) x eps -1/2 (sin x) (- (cos (+ x eps)) (cos x)) (- (cos eps) 1) (cos eps) 1 (- (cos (+ x eps)) (cos x)) (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (- (* (* eps eps) 1/6) 1) (* (* eps eps) 1/6) (* eps eps) 1/6 (* -1/2 eps) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (sin x) (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (+ (* -1/5040 (* x x)) 1/120) -1/5040 (* x x) 1/120 (- (cos (+ x eps)) (cos x)) (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (* (+ (* 1/4 x) (* 1/6 eps)) x) (+ (* 1/4 x) (* 1/6 eps)) 1/4 (* 1/6 eps) 1/2)

rewrite237.0ms (2.2%)

Memory
16.9MiB live, 241.1MiB allocated; 122ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07395132
07864957
142264957
082944776
Stop Event
iter limit
node limit
iter limit
Counts
245 → 367
Calls
Call 1
Inputs
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps)
(-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x))
(*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64))
(*.f64 (cos.f64 x) eps)
(cos.f64 x)
x
eps
#s(literal -1/2 binary64)
(sin.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
(-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64))
#s(approx (cos eps) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
(*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps)
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
(fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))
(-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64))
(*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))
(*.f64 eps eps)
#s(literal 1/6 binary64)
(*.f64 #s(literal -1/2 binary64) eps)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
(*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x)))
(neg.f64 eps)
#s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x)
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64))
(-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64))
(*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x))
(fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64))
#s(literal -1/5040 binary64)
(*.f64 x x)
#s(literal 1/120 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps)
(-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x))
(*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps)
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64)))
(-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))
(*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x)
(fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps))
#s(literal 1/4 binary64)
(*.f64 #s(literal 1/6 binary64) eps)
#s(literal 1/2 binary64)
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) eps)) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* -1 (* x (cos (- (* 1/2 (PI)) eps))))) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* x (+ 1/2 (* -1/2 (sin (- (* 1/2 (PI)) eps)))))))) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* x (+ 1/2 (+ (* -1/2 (sin (- (* 1/2 (PI)) eps))) (* 1/6 (* x (cos (- (* 1/2 (PI)) eps)))))))))) 1)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* -1/2 (pow eps 2))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (+ (* -1 (* eps x)) (* -1/2 (pow eps 2)))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* 1/4 (* (pow eps 2) x)))))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* x (+ (* 1/6 (* eps x)) (* 1/4 (pow eps 2)))))))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1/2 eps)))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (+ (* -1 x) (* -1/2 eps))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (* 1/4 (* eps x)) 1)))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (* x (+ (* 1/6 x) (* 1/4 eps))) 1)))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (* -1/2 eps)))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (+ (* -1/2 eps) (* 1/4 (* eps (pow x 2))))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (+ (* -1/2 eps) (* (pow x 2) (+ (* -1/48 (* eps (pow x 2))) (* 1/4 eps))))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (+ (* -1/2 eps) (* (pow x 2) (+ (* 1/4 eps) (* (pow x 2) (+ (* -1/48 eps) (* 1/1440 (* eps (pow x 2))))))))))
#s(approx (* (cos x) eps) #s(hole binary64 eps))
#s(approx (* (cos x) eps) #s(hole binary64 (+ eps (* -1/2 (* eps (pow x 2))))))
#s(approx (* (cos x) eps) #s(hole binary64 (+ eps (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2))))))))
#s(approx (* (cos x) eps) #s(hole binary64 (+ eps (* (pow x 2) (+ (* -1/2 eps) (* (pow x 2) (+ (* -1/720 (* eps (pow x 2))) (* 1/24 eps))))))))
#s(approx (cos x) #s(hole binary64 1))
#s(approx (cos x) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))))
#s(approx x #s(hole binary64 x))
#s(approx (sin x) #s(hole binary64 x))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* -1/6 (pow x 2))))))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos eps) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* -1 (* x (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1/2 (pow eps 2))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* eps (* x (- (* 1/6 (pow eps 2)) 1))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* 1/4 (* (pow eps 2) x)) (* eps (- (* 1/6 (pow eps 2)) 1)))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* eps (- (* 1/6 (pow eps 2)) 1)) (* x (+ (* 1/4 (pow eps 2)) (* eps (* x (+ 1/6 (* -1/36 (pow eps 2))))))))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* -1/2 eps)))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (* 1/6 (pow eps 2)) 1)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (+ (* 1/6 (pow eps 2)) (* 1/4 (* eps x))) 1)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (+ (* 1/6 (pow eps 2)) (* x (+ (* 1/4 eps) (* x (+ 1/6 (* -1/36 (pow eps 2))))))) 1)))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* -1/2 eps)))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (* 1/6 (pow eps 2)) 1)))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* -1 (* eps x))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* 1/6 (* eps (pow x 2)))))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps)))))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* (pow x 2) (+ (* 1/6 eps) (* (pow x 2) (+ (* -1/120 eps) (* 1/5040 (* eps (pow x 2)))))))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 x))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* x (+ 1 (* -1/6 (pow x 2))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 1))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (+ 1 (* -1/6 (pow x 2)))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6)))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6)))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 -1/6))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (- (* 1/120 (pow x 2)) 1/6)))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6)))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* 1/120 (pow x 2))))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2))))))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 1/120))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 (+ 1/120 (* -1/5040 (pow x 2)))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* -1/2 eps)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (+ (* -1/2 eps) (* 1/6 (* (pow eps 2) x)))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (+ (* -1/2 eps) (* x (+ (* 1/6 (pow eps 2)) (* 1/4 (* eps x)))))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (+ (* -1/2 eps) (* x (+ (* 1/6 (pow eps 2)) (* x (+ (* -1/36 (* (pow eps 2) x)) (* 1/4 eps))))))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 -1/2))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (- (* 1/6 (* eps x)) 1/2)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (- (* x (+ (* 1/6 eps) (* 1/4 x))) 1/2)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (- (* x (+ (* 1/6 eps) (* x (+ 1/4 (* -1/36 (* eps x)))))) 1/2)))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 -1/2))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (- (* 1/6 (* eps x)) 1/2)))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (- (* x (+ (* 1/6 eps) (* 1/4 x))) 1/2)))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) #s(hole binary64 (* 1/6 (* eps x))))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) #s(hole binary64 (* x (+ (* 1/6 eps) (* 1/4 x)))))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) #s(hole binary64 (* 1/6 eps)))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) #s(hole binary64 (+ (* 1/6 eps) (* 1/4 x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) (+ eps x))) (cos x))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* eps (- (* -1/2 (* eps (cos x))) (sin x)))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (- (* -1/2 (* eps (cos x))) (sin x))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (* -1/2 (* eps (cos x)))))
#s(approx (* (cos x) eps) #s(hole binary64 (* eps (cos x))))
#s(approx (cos x) #s(hole binary64 (cos x)))
#s(approx (sin x) #s(hole binary64 (sin x)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (+ eps x)) (cos x))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* x (- (* 1/6 (pow eps 2)) 1))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* x (- (+ (* -1/2 (/ eps x)) (* 1/6 (pow eps 2))) 1))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1/5040 (pow x 7))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* (pow x 7) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* (pow x 7) (- (* 1/120 (/ 1 (pow x 2))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* (pow x 7) (- (+ (* 1/120 (/ 1 (pow x 2))) (/ 1 (pow x 6))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* -1/5040 (pow x 6))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/120 (/ 1 (pow x 2))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (+ (* 1/120 (/ 1 (pow x 2))) (/ 1 (pow x 6))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (* -1/5040 (pow x 4))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (* (pow x 4) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (* (pow x 4) (- (* 1/120 (/ 1 (pow x 2))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* -1/5040 (pow x 4))))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* (pow x 4) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 (* -1/5040 (pow x 2))))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 (* (pow x 2) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x)))))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (* 1/4 (pow x 2))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (* (pow x 2) (+ 1/4 (* 1/6 (/ eps x))))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (* (pow x 2) (- (+ 1/4 (* 1/6 (/ eps x))) (/ 1/2 (pow x 2))))))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) #s(hole binary64 (* 1/4 (pow x 2))))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) #s(hole binary64 (* (pow x 2) (+ 1/4 (* 1/6 (/ eps x))))))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) #s(hole binary64 (* 1/4 x)))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) #s(hole binary64 (* x (+ 1/4 (* 1/6 (/ eps x))))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (+ (* -1 x) (* 1/2 (PI))) eps)) (cos x))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- eps (* -1 x))) (cos x))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* -1 (* x (+ (* -1 (- (* 1/6 (pow eps 2)) 1)) (* 1/2 (/ eps x)))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1 (* (pow x 7) (- 1/5040 (* 1/120 (/ 1 (pow x 2))))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1 (* (pow x 7) (- (+ 1/5040 (/ 1/6 (pow x 4))) (* 1/120 (/ 1 (pow x 2))))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1 (* (pow x 7) (- (+ 1/5040 (/ 1/6 (pow x 4))) (+ (* 1/120 (/ 1 (pow x 2))) (/ 1 (pow x 6))))))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (* (pow x 2) (+ 1/4 (* -1 (/ (+ (* -1/6 eps) (* 1/2 (/ 1 x))) x))))))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) #s(hole binary64 (* -1 (* x (- (* -1/6 (/ eps x)) 1/4)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) x)) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* -1 (* eps (cos (- (* 1/2 (PI)) x))))) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* -1/2 (* eps (sin (- (* 1/2 (PI)) x))))))) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* eps (+ (* -1/2 (sin (- (* 1/2 (PI)) x))) (* 1/6 (* eps (cos (- (* 1/2 (PI)) x))))))))) (cos x))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* eps (+ (* -1 (sin x)) (* -1/2 (* eps (cos x)))))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1 (sin x))))
#s(approx eps #s(hole binary64 eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* -1/2 (* eps (cos x))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))))
#s(approx (- (cos eps) 1) #s(hole binary64 (* -1/2 (pow eps 2))))
#s(approx (- (cos eps) 1) #s(hole binary64 (* (pow eps 2) (- (* 1/24 (pow eps 2)) 1/2))))
#s(approx (- (cos eps) 1) #s(hole binary64 (* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* -1/720 (pow eps 2)))) 1/2))))
#s(approx (- (cos eps) 1) #s(hole binary64 (* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* (pow eps 2) (- (* 1/40320 (pow eps 2)) 1/720)))) 1/2))))
#s(approx (cos eps) #s(hole binary64 1))
#s(approx (cos eps) #s(hole binary64 (+ 1 (* -1/2 (pow eps 2)))))
#s(approx (cos eps) #s(hole binary64 (+ 1 (* (pow eps 2) (- (* 1/24 (pow eps 2)) 1/2)))))
#s(approx (cos eps) #s(hole binary64 (+ 1 (* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* -1/720 (pow eps 2)))) 1/2)))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* eps (+ (* -1 (sin x)) (* -1/2 (* eps (cos x)))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* eps (+ (* -1 (sin x)) (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x)))))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* -1 (sin x))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (- (* -1/2 (* eps (cos x))) (sin x))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* -1 x)))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (+ (* -1 x) (* -1/2 eps))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (+ (* -1 x) (* eps (- (* 1/6 (* eps x)) 1/2)))))
#s(approx (- (* (* eps eps) 1/6) 1) #s(hole binary64 -1))
#s(approx (- (* (* eps eps) 1/6) 1) #s(hole binary64 (- (* 1/6 (pow eps 2)) 1)))
#s(approx (* (* eps eps) 1/6) #s(hole binary64 (* 1/6 (pow eps 2))))
#s(approx (* eps eps) #s(hole binary64 (pow eps 2)))
#s(approx (* -1/2 eps) #s(hole binary64 (* -1/2 eps)))
#s(approx (neg eps) #s(hole binary64 (* -1 eps)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* -1/2 (* eps (cos x)))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* -1/2 (cos x))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (- (* 1/4 (pow x 2)) 1/2)))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (- (+ (* 1/6 (* eps x)) (* 1/4 (pow x 2))) 1/2)))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) #s(hole binary64 (+ (* 1/6 (* eps x)) (* 1/4 (pow x 2)))))
#s(approx (* 1/6 eps) #s(hole binary64 (* 1/6 eps)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* -1/2 (* (pow eps 2) (cos x)))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* (pow eps 2) (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1/2 (* eps (cos x)))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* eps (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))))))
#s(approx (- (cos eps) 1) #s(hole binary64 (- (cos eps) 1)))
#s(approx (cos eps) #s(hole binary64 (cos eps)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* 1/6 (* (pow eps 3) (sin x)))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* (pow eps 3) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* (pow eps 3) (+ (* -1 (/ (sin x) (pow eps 2))) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x)))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* 1/6 (* (pow eps 2) (sin x)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* (pow eps 2) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* (pow eps 2) (+ (* -1 (/ (sin x) (pow eps 2))) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x)))))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* 1/6 (* (pow eps 2) x))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* (pow eps 2) (- (* 1/6 x) (* 1/2 (/ 1 eps))))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* (pow eps 2) (- (+ (* -1 (/ x (pow eps 2))) (* 1/6 x)) (* 1/2 (/ 1 eps))))))
#s(approx (- (* (* eps eps) 1/6) 1) #s(hole binary64 (* 1/6 (pow eps 2))))
#s(approx (- (* (* eps eps) 1/6) 1) #s(hole binary64 (* (pow eps 2) (- 1/6 (/ 1 (pow eps 2))))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* 1/6 (* (pow eps 2) (sin x)))))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) #s(hole binary64 (* (pow eps 2) (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* 1/6 (* eps (sin x)))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* eps (+ (* -1/2 (/ (cos x) eps)) (* 1/6 (sin x))))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (* 1/6 (* eps x))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (* eps (- (+ (* 1/6 x) (* 1/4 (/ (pow x 2) eps))) (* 1/2 (/ 1 eps))))))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) #s(hole binary64 (* eps (+ (* 1/6 x) (* 1/4 (/ (pow x 2) eps))))))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) #s(hole binary64 (* eps (+ 1/6 (* 1/4 (/ x eps))))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (+ (* -1 eps) (* 1/2 (PI))) x)) (cos x))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1 (* eps (+ (* 1/2 (cos x)) (/ (sin x) eps))))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- x (* -1 eps))) (cos x))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1 (* (pow eps 3) (+ (* -1/6 (sin x)) (* 1/2 (/ (cos x) eps)))))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) #s(hole binary64 (* -1 (* (pow eps 3) (+ (* -1 (/ (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))) eps)) (* -1/6 (sin x)))))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(hole binary64 (* (pow eps 2) (+ (* -1 (/ (+ (* 1/2 (cos x)) (/ (sin x) eps)) eps)) (* 1/6 (sin x))))))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) #s(hole binary64 (* (pow eps 2) (+ (* -1 (/ (+ 1/2 (/ x eps)) eps)) (* 1/6 x)))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(hole binary64 (* -1 (* eps (+ (* -1/6 (sin x)) (* 1/2 (/ (cos x) eps)))))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(hole binary64 (* -1 (* eps (+ (* -1 (/ (- (* 1/4 (pow x 2)) 1/2) eps)) (* -1/6 x))))))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) #s(hole binary64 (* -1 (* eps (+ (* -1/4 (/ (pow x 2) eps)) (* -1/6 x))))))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) #s(hole binary64 (* -1 (* eps (- (* -1/4 (/ x eps)) 1/6)))))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps)
(*.f64 eps (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64))) (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (sin.f64 x)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)))))
(-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x))
(*.f64 (*.f64 #s(literal -1/2 binary64) eps) (cos.f64 x))
(*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64))
(*.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 x) eps))
(*.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) eps))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(fma.f64 (sin.f64 x) #s(literal 0 binary64) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(sin.f64 (fma.f64 #s(literal -1 binary64) x (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 x (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (neg.f64 (neg.f64 x)))
(cos.f64 (neg.f64 x))
(cos.f64 x)
(+.f64 (*.f64 (sin.f64 x) #s(literal 0 binary64)) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
x
eps
#s(literal -1/2 binary64)
(sin.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
(/.f64 (-.f64 (pow.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (+.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
(/.f64 (-.f64 (pow.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(approx (cos eps) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64))
#s(approx (cos eps) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
(*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps)
(*.f64 eps #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
(/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -1/2 binary64) eps) #s(literal 2 binary64))) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) (*.f64 #s(literal -1/2 binary64) eps)))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) eps) #s(literal 2 binary64)) (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal -1/2 binary64) eps) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x)))
(/.f64 (+.f64 (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) #s(literal 3 binary64)) (*.f64 #s(literal -1/8 binary64) (pow.f64 eps #s(literal 3 binary64)))) (+.f64 (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) eps) #s(literal 2 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) (*.f64 #s(literal -1/2 binary64) eps)))))
(/.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 eps #s(literal 3 binary64)) (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) eps) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal -1/2 binary64) eps) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x)))))
(fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))
(fma.f64 #s(literal -1/2 binary64) eps (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))
(fma.f64 x (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) (*.f64 #s(literal -1/2 binary64) eps))
(fma.f64 eps #s(literal -1/2 binary64) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))
(-.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) (*.f64 #s(literal 1/2 binary64) eps))
(-.f64 (*.f64 #s(literal -1/2 binary64) eps) (*.f64 (neg.f64 x) (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64))))
(+.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) (*.f64 #s(literal -1/2 binary64) eps))
(+.f64 (*.f64 #s(literal -1/2 binary64) eps) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 eps eps) #s(literal 1/6 binary64) #s(literal 1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)))))
(-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64))
(*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))
(*.f64 #s(literal 1/6 binary64) (*.f64 eps eps))
(*.f64 eps (*.f64 #s(literal 1/6 binary64) eps))
(*.f64 (neg.f64 (fabs.f64 eps)) (neg.f64 (fabs.f64 eps)))
(*.f64 (fabs.f64 (fabs.f64 eps)) (fabs.f64 (fabs.f64 eps)))
(*.f64 (exp.f64 (log.f64 eps)) (exp.f64 (log.f64 eps)))
(*.f64 (neg.f64 (neg.f64 eps)) (neg.f64 (neg.f64 eps)))
(*.f64 (fabs.f64 eps) (fabs.f64 eps))
(*.f64 (neg.f64 eps) (neg.f64 eps))
(*.f64 eps eps)
(pow.f64 (exp.f64 (log.f64 eps)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 eps) #s(literal 2 binary64))
(pow.f64 (neg.f64 eps) #s(literal 2 binary64))
(pow.f64 (*.f64 eps eps) #s(literal 1 binary64))
(pow.f64 eps #s(literal 2 binary64))
(fabs.f64 (*.f64 eps eps))
(exp.f64 (*.f64 (log.f64 eps) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 eps) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 eps) #s(literal 2 binary64))))
#s(literal 1/6 binary64)
(*.f64 #s(literal -1/2 binary64) eps)
(*.f64 eps #s(literal -1/2 binary64))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
(*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x)))
(*.f64 #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x)) (neg.f64 eps))
(neg.f64 (*.f64 eps #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
(*.f64 #s(literal -1 binary64) eps)
(*.f64 eps #s(literal -1 binary64))
(neg.f64 eps)
#s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))
(*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x)
(*.f64 x (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) x (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x)) x))
(fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x))))
(+.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 x (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x))))
(+.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x)) x))
(/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x)) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x)) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x))))
(/.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)) #s(literal 1 binary64)) (+.f64 (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x)) #s(literal 1 binary64)))))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)))) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x)) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x))))))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) x) x #s(literal 1 binary64))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64))
(fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) #s(literal 1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 x x)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))))
(+.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 x x) #s(literal 1/6 binary64)))
(/.f64 (-.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))) #s(literal 1/216 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 2 binary64)) (+.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)))))
(-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))
(*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x)
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 x x))
(*.f64 (*.f64 x x) (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))
(fma.f64 (*.f64 x x) #s(literal 1/120 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)) (*.f64 x x)))
(fma.f64 (*.f64 x x) #s(literal 1/120 binary64) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) #s(literal -1/5040 binary64))))
(fma.f64 #s(literal 1/120 binary64) (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)) (*.f64 x x)))
(fma.f64 #s(literal 1/120 binary64) (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) #s(literal -1/5040 binary64))))
(+.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)) (*.f64 x x)))
(+.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) #s(literal -1/5040 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (-.f64 (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)))
(/.f64 (-.f64 #s(literal 1/14400 binary64) (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 x x) #s(literal -1/5040 binary64))))
(/.f64 (fma.f64 #s(literal -1/128024064000 binary64) (pow.f64 x #s(literal 6 binary64)) #s(literal 1/1728000 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1/14400 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64)))))
(/.f64 (+.f64 #s(literal 1/1728000 binary64) (*.f64 #s(literal -1/128024064000 binary64) (pow.f64 x #s(literal 6 binary64)))) (+.f64 #s(literal 1/14400 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 x x) #s(literal -1/5040 binary64))))))
(fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))
(fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))
(fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64))
(-.f64 #s(literal 1/120 binary64) (*.f64 #s(literal 1/5040 binary64) (*.f64 x x)))
(+.f64 (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64))
(+.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)))
#s(literal -1/5040 binary64)
(*.f64 (neg.f64 (fabs.f64 x)) (neg.f64 (fabs.f64 x)))
(*.f64 (fabs.f64 (fabs.f64 x)) (fabs.f64 (fabs.f64 x)))
(*.f64 (exp.f64 (log.f64 x)) (exp.f64 (log.f64 x)))
(*.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)))
(*.f64 (fabs.f64 x) (fabs.f64 x))
(*.f64 (neg.f64 x) (neg.f64 x))
(*.f64 x x)
(pow.f64 (exp.f64 (log.f64 x)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 x) #s(literal 2 binary64))
(pow.f64 (neg.f64 x) #s(literal 2 binary64))
(pow.f64 (*.f64 x x) #s(literal 1 binary64))
(pow.f64 x #s(literal 2 binary64))
(fabs.f64 (*.f64 x x))
(exp.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))))
#s(literal 1/120 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps)
(*.f64 eps (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64))) (fma.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps (sin.f64 x)))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)))))
(-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x))
(*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps)
(*.f64 eps #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x #s(literal 1/2 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64)))))
(-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))
(*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x)
(*.f64 x (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)))
(fma.f64 (*.f64 #s(literal 1/6 binary64) eps) x (*.f64 (*.f64 #s(literal 1/4 binary64) x) x))
(fma.f64 (*.f64 x eps) #s(literal 1/6 binary64) (*.f64 (*.f64 #s(literal 1/4 binary64) x) x))
(fma.f64 #s(literal 1/6 binary64) (*.f64 x eps) (*.f64 (*.f64 #s(literal 1/4 binary64) x) x))
(fma.f64 x (*.f64 #s(literal 1/6 binary64) eps) (*.f64 x (*.f64 #s(literal 1/4 binary64) x)))
(+.f64 (*.f64 x (*.f64 #s(literal 1/6 binary64) eps)) (*.f64 x (*.f64 #s(literal 1/4 binary64) x)))
(+.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) (*.f64 (*.f64 #s(literal 1/4 binary64) x) x))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) eps) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 1/4 binary64) x) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 1/6 binary64) eps) (*.f64 #s(literal 1/4 binary64) x)))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/4 binary64) x) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 1/6 binary64) eps) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 1/4 binary64) x) (*.f64 #s(literal 1/6 binary64) eps)))
(/.f64 (fma.f64 #s(literal 1/216 binary64) (pow.f64 eps #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal 1/4 binary64) x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) eps) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal 1/4 binary64) x) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/6 binary64) eps) (*.f64 #s(literal 1/4 binary64) x)))))
(/.f64 (fma.f64 #s(literal 1/64 binary64) (pow.f64 x #s(literal 3 binary64)) (*.f64 #s(literal 1/216 binary64) (pow.f64 eps #s(literal 3 binary64)))) (+.f64 (pow.f64 (*.f64 #s(literal 1/4 binary64) x) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) eps) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/4 binary64) x) (*.f64 #s(literal 1/6 binary64) eps)))))
(fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps))
(fma.f64 #s(literal 1/6 binary64) eps (*.f64 #s(literal 1/4 binary64) x))
(fma.f64 x #s(literal 1/4 binary64) (*.f64 #s(literal 1/6 binary64) eps))
(fma.f64 eps #s(literal 1/6 binary64) (*.f64 #s(literal 1/4 binary64) x))
(-.f64 (*.f64 #s(literal 1/4 binary64) x) (*.f64 #s(literal -1/6 binary64) eps))
(-.f64 (*.f64 #s(literal 1/6 binary64) eps) (*.f64 #s(literal -1/4 binary64) x))
(+.f64 (*.f64 #s(literal 1/4 binary64) x) (*.f64 #s(literal 1/6 binary64) eps))
(+.f64 (*.f64 #s(literal 1/6 binary64) eps) (*.f64 #s(literal 1/4 binary64) x))
#s(literal 1/4 binary64)
(*.f64 #s(literal 1/6 binary64) eps)
(*.f64 eps #s(literal 1/6 binary64))
#s(literal 1/2 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (neg.f64 x) (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps)) (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps))) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (fma.f64 (fma.f64 (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps)) #s(literal -1/2 binary64) #s(literal 1/2 binary64)) x (neg.f64 (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps)))) x (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps))) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (fma.f64 (+.f64 (fma.f64 (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps)) #s(literal -1/2 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 #s(literal 1/6 binary64) x) (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps)))) x (neg.f64 (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps)))) x (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps))) #s(literal 1 binary64)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) x) #s(literal 1/4 binary64) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (fma.f64 (fma.f64 (*.f64 x eps) #s(literal 1/6 binary64) (*.f64 (*.f64 eps eps) #s(literal 1/4 binary64))) x (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/4 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (* (* (cos x) eps) -1/2) (*.f64 #s(literal -1/2 binary64) eps))
#s(approx (* (* (cos x) eps) -1/2) (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/4 binary64) (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (* (* (cos x) eps) -1/2) (fma.f64 (fma.f64 #s(literal -1/48 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal 1/4 binary64) eps)) (*.f64 x x) (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (* (* (cos x) eps) -1/2) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/1440 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal -1/48 binary64) eps)) (*.f64 x x) (*.f64 #s(literal 1/4 binary64) eps)) (*.f64 x x) (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (* (cos x) eps) eps)
#s(approx (* (cos x) eps) (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/2 binary64) eps))
#s(approx (* (cos x) eps) (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal -1/2 binary64) eps)) (*.f64 x x) eps))
#s(approx (* (cos x) eps) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal 1/24 binary64) eps)) (*.f64 x x) (*.f64 #s(literal -1/2 binary64) eps)) (*.f64 x x) eps))
#s(approx (cos x) #s(literal 1 binary64))
#s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx x x)
#s(approx (sin x) x)
#s(approx (sin x) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 x x) #s(literal 1 binary64)) x))
#s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))
#s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (neg.f64 x) (sin.f64 eps) (cos.f64 eps)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (cos.f64 eps) #s(literal -1/2 binary64) #s(literal 1/2 binary64)) x) (sin.f64 eps)) x (cos.f64 eps)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (-.f64 (*.f64 (+.f64 (fma.f64 (*.f64 (sin.f64 eps) x) #s(literal 1/6 binary64) (*.f64 (cos.f64 eps) #s(literal -1/2 binary64))) #s(literal 1/2 binary64)) x) (sin.f64 eps)) x (cos.f64 eps)) #s(literal 1 binary64)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) eps (*.f64 (*.f64 (*.f64 eps eps) x) #s(literal 1/4 binary64))) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal 1/4 binary64))) x (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (fma.f64 (*.f64 eps eps) #s(literal 1/6 binary64) (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/4 binary64)) #s(literal 1 binary64))) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x (*.f64 #s(literal 1/4 binary64) eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 #s(literal -1/2 binary64) eps))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 eps) x))
#s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/6 binary64) (neg.f64 eps)) x))
#s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal 1/6 binary64) eps)) (*.f64 x x) (neg.f64 eps)) x))
#s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal -1/120 binary64) eps)) (*.f64 x x) (*.f64 #s(literal 1/6 binary64) eps)) (*.f64 x x) (neg.f64 eps)) x))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x)
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 x x) #s(literal 1 binary64)) x))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(literal 1 binary64))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (fma.f64 #s(literal -1/6 binary64) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(literal -1/6 binary64))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (*.f64 (*.f64 x x) #s(literal 1/120 binary64)))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) x) x))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64))
#s(approx (+ (* -1/5040 (* x x)) 1/120) (fma.f64 (*.f64 x x) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))
#s(approx (* x x) (*.f64 x x))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (*.f64 #s(literal -1/2 binary64) eps))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (fma.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (fma.f64 (fma.f64 (*.f64 #s(literal 1/4 binary64) eps) x (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/36 binary64) (*.f64 eps eps)) x (*.f64 #s(literal 1/4 binary64) eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(literal -1/2 binary64))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 x eps) #s(literal 1/4 binary64)) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64)))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(literal -1/2 binary64))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64)))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 #s(literal 1/6 binary64) eps))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (sin.f64 (-.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps) x)) (cos.f64 x)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)))
#s(approx (* (* (cos x) eps) -1/2) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)))
#s(approx (* (cos x) eps) (*.f64 (cos.f64 x) eps))
#s(approx (cos x) (cos.f64 x))
#s(approx (sin x) (sin.f64 x))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (fma.f64 (/.f64 eps x) #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64))) x))
#s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (*.f64 (pow.f64 x #s(literal 7 binary64)) #s(literal -1/5040 binary64)))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (*.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64)) (pow.f64 x #s(literal 7 binary64))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (*.f64 (-.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 x #s(literal 4 binary64)))) (pow.f64 x #s(literal 7 binary64))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (*.f64 (-.f64 (-.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64) (pow.f64 x #s(literal -6 binary64))) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 x #s(literal 4 binary64)))) (pow.f64 x #s(literal 7 binary64))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal -1/5040 binary64)))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) (-.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 x #s(literal 4 binary64))))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) (-.f64 (-.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64) (pow.f64 x #s(literal -6 binary64))) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 x #s(literal 4 binary64))))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/5040 binary64)))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (*.f64 (-.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 x #s(literal 4 binary64)))) (pow.f64 x #s(literal 4 binary64))))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/5040 binary64)))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64))))
#s(approx (+ (* -1/5040 (* x x)) 1/120) (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)))
#s(approx (+ (* -1/5040 (* x x)) 1/120) (*.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64)) (*.f64 x x)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (*.f64 (*.f64 x x) #s(literal 1/4 binary64)))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/6 binary64) #s(literal 1/4 binary64)) (*.f64 x x)))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (*.f64 (-.f64 (fma.f64 (/.f64 eps x) #s(literal 1/6 binary64) #s(literal 1/4 binary64)) (/.f64 #s(literal 1/2 binary64) (*.f64 x x))) (*.f64 x x)))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) (*.f64 (*.f64 x x) #s(literal 1/4 binary64)))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/6 binary64) #s(literal 1/4 binary64)) (*.f64 x x)))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 #s(literal 1/4 binary64) x))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/6 binary64) #s(literal 1/4 binary64)) x))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (neg.f64 x)) eps)) (cos.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 (-.f64 eps (neg.f64 x))) (cos.f64 x)))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (neg.f64 x) (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) (neg.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (neg.f64 (*.f64 (-.f64 #s(literal 1/5040 binary64) (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64))) (pow.f64 x #s(literal 7 binary64)))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (neg.f64 (*.f64 (-.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 x #s(literal 4 binary64))) #s(literal 1/5040 binary64)) (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64))) (pow.f64 x #s(literal 7 binary64)))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (neg.f64 (*.f64 (-.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 x #s(literal 4 binary64))) #s(literal 1/5040 binary64)) (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64) (pow.f64 x #s(literal -6 binary64)))) (pow.f64 x #s(literal 7 binary64)))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1/6 binary64) eps (/.f64 #s(literal 1/2 binary64) x)) x) #s(literal -1 binary64) #s(literal 1/4 binary64)) (*.f64 x x)))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 (neg.f64 x) (-.f64 (*.f64 (/.f64 eps x) #s(literal -1/6 binary64)) #s(literal 1/4 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x)) (cos.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (neg.f64 eps) (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x)) (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x))) (cos.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x)) eps) #s(literal -1/2 binary64) (neg.f64 (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x)))) eps (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x))) (cos.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (fma.f64 (fma.f64 (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x)) #s(literal -1/2 binary64) (*.f64 (*.f64 #s(literal 1/6 binary64) eps) (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x)))) eps (neg.f64 (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x)))) eps (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x))) (cos.f64 x)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) eps) (cos.f64 x) (neg.f64 (sin.f64 x))) eps))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (neg.f64 (sin.f64 x)))
#s(approx eps eps)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) eps) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (sin.f64 x))) eps (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
#s(approx (- (cos eps) 1) (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))
#s(approx (- (cos eps) 1) (*.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 eps eps)) #s(literal 1/2 binary64)) (*.f64 eps eps)))
#s(approx (- (cos eps) 1) (*.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 eps eps) #s(literal 1/24 binary64)) (*.f64 eps eps)) #s(literal 1/2 binary64)) (*.f64 eps eps)))
#s(approx (- (cos eps) 1) (*.f64 (-.f64 (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/40320 binary64) (*.f64 eps eps)) #s(literal 1/720 binary64)) (*.f64 eps eps) #s(literal 1/24 binary64)) (*.f64 eps eps)) #s(literal 1/2 binary64)) (*.f64 eps eps)))
#s(approx (cos eps) #s(literal 1 binary64))
#s(approx (cos eps) (fma.f64 (*.f64 eps eps) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos eps) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 eps eps)) #s(literal 1/2 binary64)) (*.f64 eps eps) #s(literal 1 binary64)))
#s(approx (cos eps) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 eps eps) #s(literal 1/24 binary64)) (*.f64 eps eps)) #s(literal 1/2 binary64)) (*.f64 eps eps) #s(literal 1 binary64)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) eps) (cos.f64 x) (neg.f64 (sin.f64 x))) eps))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps (neg.f64 (sin.f64 x))) eps))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (neg.f64 (sin.f64 x)))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (neg.f64 x))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))
#s(approx (- (* (* eps eps) 1/6) 1) #s(literal -1 binary64))
#s(approx (- (* (* eps eps) 1/6) 1) (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)))
#s(approx (* (* eps eps) 1/6) (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)))
#s(approx (* eps eps) (*.f64 eps eps))
#s(approx (* -1/2 eps) (*.f64 #s(literal -1/2 binary64) eps))
#s(approx (neg eps) (neg.f64 eps))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (-.f64 (*.f64 (*.f64 x x) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (fma.f64 (*.f64 #s(literal 1/6 binary64) eps) x (-.f64 (*.f64 (*.f64 x x) #s(literal 1/4 binary64)) #s(literal 1/2 binary64))))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) (fma.f64 (*.f64 #s(literal 1/6 binary64) eps) x (*.f64 (*.f64 x x) #s(literal 1/4 binary64))))
#s(approx (* 1/6 eps) (*.f64 #s(literal 1/6 binary64) eps))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (*.f64 (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)) (cos.f64 x)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (/.f64 (neg.f64 (sin.f64 x)) eps)) (*.f64 eps eps)))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (/.f64 (neg.f64 (sin.f64 x)) eps)) eps))
#s(approx (- (cos eps) 1) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
#s(approx (cos eps) (cos.f64 eps))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (*.f64 #s(literal 1/6 binary64) (pow.f64 eps #s(literal 3 binary64))) (sin.f64 x)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) (sin.f64 x))) (pow.f64 eps #s(literal 3 binary64))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (fma.f64 (/.f64 (sin.f64 x) (*.f64 eps eps)) #s(literal -1 binary64) (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) (sin.f64 x)))) (pow.f64 eps #s(literal 3 binary64))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) (sin.f64 x)))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) (sin.f64 x))) (*.f64 eps eps)))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 (fma.f64 (/.f64 (sin.f64 x) (*.f64 eps eps)) #s(literal -1 binary64) (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) (sin.f64 x)))) (*.f64 eps eps)))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) x))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) x) (/.f64 #s(literal 1/2 binary64) eps)) (*.f64 eps eps)))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (fma.f64 #s(literal 1/6 binary64) x (/.f64 (neg.f64 x) (*.f64 eps eps))) (/.f64 #s(literal 1/2 binary64) eps)) (*.f64 eps eps)))
#s(approx (- (* (* eps eps) 1/6) 1) (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)))
#s(approx (- (* (* eps eps) 1/6) 1) (*.f64 (-.f64 #s(literal 1/6 binary64) (pow.f64 eps #s(literal -2 binary64))) (*.f64 eps eps)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (*.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) (sin.f64 x)))
#s(approx (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (*.f64 (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) (sin.f64 x))) (*.f64 eps eps)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (*.f64 (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) (sin.f64 x))) eps))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (*.f64 (fma.f64 #s(literal 1/6 binary64) x (/.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) eps)) eps))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) (*.f64 (fma.f64 (/.f64 (*.f64 x x) eps) #s(literal 1/4 binary64) (*.f64 #s(literal 1/6 binary64) x)) eps))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 (fma.f64 (/.f64 x eps) #s(literal 1/4 binary64) #s(literal 1/6 binary64)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (neg.f64 eps)) x)) (cos.f64 x)))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 (neg.f64 eps) (fma.f64 #s(literal 1/2 binary64) (cos.f64 x) (/.f64 (sin.f64 x) eps))))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 (-.f64 x (neg.f64 eps))) (cos.f64 x)))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (pow.f64 (neg.f64 eps) #s(literal 3 binary64)) (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) (sin.f64 x)))))
#s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (*.f64 (pow.f64 (neg.f64 eps) #s(literal 3 binary64)) (fma.f64 #s(literal -1/6 binary64) (sin.f64 x) (neg.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (/.f64 (neg.f64 (sin.f64 x)) eps)) eps)))))
#s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 (fma.f64 #s(literal 1/6 binary64) (sin.f64 x) (neg.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (cos.f64 x) (/.f64 (sin.f64 x) eps)) eps))) (*.f64 eps eps)))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (fma.f64 #s(literal 1/6 binary64) x (neg.f64 (/.f64 (+.f64 (/.f64 x eps) #s(literal 1/2 binary64)) eps))) (*.f64 eps eps)))
#s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (*.f64 (neg.f64 eps) (fma.f64 (/.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (*.f64 #s(literal -1/6 binary64) (sin.f64 x)))))
#s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (*.f64 (neg.f64 eps) (fma.f64 #s(literal -1/6 binary64) x (neg.f64 (/.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) eps)))))
#s(approx (* (+ (* 1/4 x) (* 1/6 eps)) x) (*.f64 (neg.f64 eps) (fma.f64 #s(literal -1/4 binary64) (/.f64 (*.f64 x x) eps) (*.f64 #s(literal -1/6 binary64) x))))
#s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 (neg.f64 eps) (-.f64 (*.f64 #s(literal -1/4 binary64) (/.f64 x eps)) #s(literal 1/6 binary64))))

eval58.0ms (0.5%)

Memory
-7.7MiB live, 95.5MiB allocated; 20ms collecting garbage
Compiler

Compiled 16 993 to 2 459 computations (85.5% saved)

prune33.0ms (0.3%)

Memory
-29.5MiB live, 63.2MiB allocated; 9ms collecting garbage
Pruning

26 alts after pruning (21 fresh and 5 done)

PrunedKeptTotal
New43116447
Fresh9514
Picked235
Done123
Total44326469
Accuracy
100.0%
Counts
469 → 26
Alt Table
Click to see full alt table
StatusAccuracyProgram
51.4%
(-.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
51.5%
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
51.4%
(-.f64 (sin.f64 #s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (neg.f64 eps)) x))) (cos.f64 x))
51.3%
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
80.8%
(*.f64 (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64)))) #s(literal -2 binary64))
99.2%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
99.0%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
98.9%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
98.7%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (* (cos x) eps) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
98.2%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
97.7%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/4 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
97.7%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
51.0%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
97.8%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
49.9%
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
98.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
97.7%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) x)) eps))
98.9%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 #s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 #s(literal 1/4 binary64) x)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
78.1%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
77.7%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
77.7%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
77.6%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
77.3%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
97.7%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) eps))
94.0%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (fma.f64 #s(literal 1/6 binary64) x (neg.f64 (/.f64 (+.f64 (/.f64 x eps) #s(literal 1/2 binary64)) eps))) (*.f64 eps eps)))) eps))
77.3%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
Compiler

Compiled 1 569 to 1 067 computations (32% saved)

series20.0ms (0.2%)

Memory
37.6MiB live, 37.6MiB allocated; 0ms collecting garbage
Counts
49 → 144
Calls
Call 1
Inputs
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps)
(-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x))
(*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64))
(*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps)
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64))
(*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x))
(fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64))
#s(literal -1/720 binary64)
(*.f64 x x)
x
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
eps
#s(literal -1/2 binary64)
(sin.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
(*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x)))
(neg.f64 eps)
#s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
(*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x)))
#s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x)
(fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64))
#s(literal -1/6 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
(*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x)))
#s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x)
(fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64))
(-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64))
(*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64))
#s(literal 1/120 binary64)
#s(literal 1/6 binary64)
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps)
(-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x))
(*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64))
(*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps)
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/24 binary64) (*.f64 x x))
Outputs
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) eps)) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* -1 (* x (cos (- (* 1/2 (PI)) eps))))) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* x (+ 1/2 (* -1/2 (sin (- (* 1/2 (PI)) eps)))))))) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* x (+ 1/2 (+ (* -1/2 (sin (- (* 1/2 (PI)) eps))) (* 1/6 (* x (cos (- (* 1/2 (PI)) eps)))))))))) 1)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* -1/2 (pow eps 2))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (+ (* -1 (* eps x)) (* -1/2 (pow eps 2)))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* 1/4 (* (pow eps 2) x)))))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* x (+ (* 1/6 (* eps x)) (* 1/4 (pow eps 2)))))))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1/2 eps)))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (+ (* -1 x) (* -1/2 eps))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (* 1/4 (* eps x)) 1)))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (* x (+ (* 1/6 x) (* 1/4 eps))) 1)))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (* -1/2 eps)))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (+ (* -1/2 eps) (* 1/4 (* eps (pow x 2))))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (+ (* -1/2 eps) (* (pow x 2) (+ (* -1/48 (* eps (pow x 2))) (* 1/4 eps))))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (+ (* -1/2 eps) (* (pow x 2) (+ (* 1/4 eps) (* (pow x 2) (+ (* -1/48 eps) (* 1/1440 (* eps (pow x 2))))))))))
#s(approx (* (cos x) eps) #s(hole binary64 eps))
#s(approx (* (cos x) eps) #s(hole binary64 (+ eps (* -1/2 (* eps (pow x 2))))))
#s(approx (* (cos x) eps) #s(hole binary64 (+ eps (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2))))))))
#s(approx (* (cos x) eps) #s(hole binary64 (+ eps (* (pow x 2) (+ (* -1/2 eps) (* (pow x 2) (+ (* -1/720 (* eps (pow x 2))) (* 1/24 eps))))))))
#s(approx (cos x) #s(hole binary64 1))
#s(approx (cos x) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 1))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) #s(hole binary64 -1/2))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) #s(hole binary64 (- (* 1/24 (pow x 2)) 1/2)))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) #s(hole binary64 (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) (* x x)) #s(hole binary64 (* 1/24 (pow x 2))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) (* x x)) #s(hole binary64 (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2))))))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 1/24))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 (+ 1/24 (* -1/720 (pow x 2)))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx x #s(hole binary64 x))
#s(approx (sin x) #s(hole binary64 x))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* -1/6 (pow x 2))))))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos eps) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* -1 (* x (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* -1 (* eps x))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* 1/6 (* eps (pow x 2)))))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps)))))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* (pow x 2) (+ (* 1/6 eps) (* (pow x 2) (+ (* -1/120 eps) (* 1/5040 (* eps (pow x 2)))))))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 x))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* x (+ 1 (* -1/6 (pow x 2))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))))
#s(approx (* (+ (* (* x x) -1/6) 1) x) #s(hole binary64 x))
#s(approx (* (+ (* (* x x) -1/6) 1) x) #s(hole binary64 (* x (+ 1 (* -1/6 (pow x 2))))))
#s(approx (+ (* (* x x) -1/6) 1) #s(hole binary64 1))
#s(approx (+ (* (* x x) -1/6) 1) #s(hole binary64 (+ 1 (* -1/6 (pow x 2)))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 1))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (+ 1 (* -1/6 (pow x 2)))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6)))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6)))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 -1/6))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (- (* 1/120 (pow x 2)) 1/6)))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6)))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* 1/120 (pow x 2))))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2))))))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 1/120))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 (+ 1/120 (* -1/5040 (pow x 2)))))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) #s(hole binary64 1))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))))
#s(approx (- (* 1/24 (* x x)) 1/2) #s(hole binary64 -1/2))
#s(approx (- (* 1/24 (* x x)) 1/2) #s(hole binary64 (- (* 1/24 (pow x 2)) 1/2)))
#s(approx (* 1/24 (* x x)) #s(hole binary64 (* 1/24 (pow x 2))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) (+ eps x))) (cos x))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* eps (- (* -1/2 (* eps (cos x))) (sin x)))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (- (* -1/2 (* eps (cos x))) (sin x))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (* -1/2 (* eps (cos x)))))
#s(approx (* (cos x) eps) #s(hole binary64 (* eps (cos x))))
#s(approx (cos x) #s(hole binary64 (cos x)))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (* -1/720 (pow x 6))))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/24 (/ 1 (pow x 2))) (+ 1/720 (/ 1/2 (pow x 4)))))))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (+ (* 1/24 (/ 1 (pow x 2))) (/ 1 (pow x 6))) (+ 1/720 (/ 1/2 (pow x 4)))))))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) #s(hole binary64 (* -1/720 (pow x 4))))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) #s(hole binary64 (* (pow x 4) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) #s(hole binary64 (* (pow x 4) (- (* 1/24 (/ 1 (pow x 2))) (+ 1/720 (/ 1/2 (pow x 4)))))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) (* x x)) #s(hole binary64 (* -1/720 (pow x 4))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) (* x x)) #s(hole binary64 (* (pow x 4) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 (* -1/720 (pow x 2))))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 (* (pow x 2) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (sin x) #s(hole binary64 (sin x)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (+ eps x)) (cos x))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1/5040 (pow x 7))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* (pow x 7) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* (pow x 7) (- (* 1/120 (/ 1 (pow x 2))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* (pow x 7) (- (+ (* 1/120 (/ 1 (pow x 2))) (/ 1 (pow x 6))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (* (+ (* (* x x) -1/6) 1) x) #s(hole binary64 (* -1/6 (pow x 3))))
#s(approx (* (+ (* (* x x) -1/6) 1) x) #s(hole binary64 (* (pow x 3) (- (/ 1 (pow x 2)) 1/6))))
#s(approx (+ (* (* x x) -1/6) 1) #s(hole binary64 (* -1/6 (pow x 2))))
#s(approx (+ (* (* x x) -1/6) 1) #s(hole binary64 (* (pow x 2) (- (/ 1 (pow x 2)) 1/6))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* -1/5040 (pow x 6))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/120 (/ 1 (pow x 2))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (+ (* 1/120 (/ 1 (pow x 2))) (/ 1 (pow x 6))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (* -1/5040 (pow x 4))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (* (pow x 4) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (* (pow x 4) (- (* 1/120 (/ 1 (pow x 2))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* -1/5040 (pow x 4))))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* (pow x 4) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 (* -1/5040 (pow x 2))))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 (* (pow x 2) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (* 1/24 (pow x 4))))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 4) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 4) (- (+ 1/24 (/ 1 (pow x 4))) (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (- (* 1/24 (* x x)) 1/2) #s(hole binary64 (* 1/24 (pow x 2))))
#s(approx (- (* 1/24 (* x x)) 1/2) #s(hole binary64 (* (pow x 2) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (+ (* -1 x) (* 1/2 (PI))) eps)) (cos x))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- eps (* -1 x))) (cos x))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1 (* (pow x 7) (- 1/5040 (* 1/120 (/ 1 (pow x 2))))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1 (* (pow x 7) (- (+ 1/5040 (/ 1/6 (pow x 4))) (* 1/120 (/ 1 (pow x 2))))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1 (* (pow x 7) (- (+ 1/5040 (/ 1/6 (pow x 4))) (+ (* 1/120 (/ 1 (pow x 2))) (/ 1 (pow x 6))))))))
#s(approx (* (+ (* (* x x) -1/6) 1) x) #s(hole binary64 (* -1 (* (pow x 3) (- 1/6 (/ 1 (pow x 2)))))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) x)) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* -1 (* eps (cos (- (* 1/2 (PI)) x))))) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* -1/2 (* eps (sin (- (* 1/2 (PI)) x))))))) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* eps (+ (* -1/2 (sin (- (* 1/2 (PI)) x))) (* 1/6 (* eps (cos (- (* 1/2 (PI)) x))))))))) (cos x))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* eps (+ (* -1 (sin x)) (* -1/2 (* eps (cos x)))))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1 (sin x))))
#s(approx eps #s(hole binary64 eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* -1/2 (* eps (cos x))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))))
#s(approx (neg eps) #s(hole binary64 (* -1 eps)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* -1/2 (* (pow eps 2) (cos x)))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* (pow eps 2) (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1/2 (* eps (cos x)))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* eps (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (+ (* -1 eps) (* 1/2 (PI))) x)) (cos x))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1 (* eps (+ (* 1/2 (cos x)) (/ (sin x) eps))))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- x (* -1 eps))) (cos x))))
Calls

6 calls:

TimeVariablePointExpression
4.0ms
x
@inf
((- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (- (* (* (cos x) eps) -1/2) (sin x)) (* (* (cos x) eps) -1/2) (* (cos x) eps) (cos x) (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* (+ (* -1/720 (* x x)) 1/24) (* x x)) (+ (* -1/720 (* x x)) 1/24) -1/720 (* x x) x 1/24 1/2 1 eps -1/2 (sin x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (sin x) (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (sin x) (* (+ (* (* x x) -1/6) 1) x) (+ (* (* x x) -1/6) 1) -1/6 (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (sin x) (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (+ (* -1/5040 (* x x)) 1/120) 1/120 1/6 (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (- (* (* (cos x) eps) -1/2) (sin x)) (* (* (cos x) eps) -1/2) (* (cos x) eps) (cos x) (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) (- (* 1/24 (* x x)) 1/2) (* 1/24 (* x x)))
4.0ms
x
@-inf
((- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (- (* (* (cos x) eps) -1/2) (sin x)) (* (* (cos x) eps) -1/2) (* (cos x) eps) (cos x) (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* (+ (* -1/720 (* x x)) 1/24) (* x x)) (+ (* -1/720 (* x x)) 1/24) -1/720 (* x x) x 1/24 1/2 1 eps -1/2 (sin x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (sin x) (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (sin x) (* (+ (* (* x x) -1/6) 1) x) (+ (* (* x x) -1/6) 1) -1/6 (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (sin x) (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (+ (* -1/5040 (* x x)) 1/120) 1/120 1/6 (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (- (* (* (cos x) eps) -1/2) (sin x)) (* (* (cos x) eps) -1/2) (* (cos x) eps) (cos x) (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) (- (* 1/24 (* x x)) 1/2) (* 1/24 (* x x)))
3.0ms
x
@0
((- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (- (* (* (cos x) eps) -1/2) (sin x)) (* (* (cos x) eps) -1/2) (* (cos x) eps) (cos x) (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* (+ (* -1/720 (* x x)) 1/24) (* x x)) (+ (* -1/720 (* x x)) 1/24) -1/720 (* x x) x 1/24 1/2 1 eps -1/2 (sin x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (sin x) (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (sin x) (* (+ (* (* x x) -1/6) 1) x) (+ (* (* x x) -1/6) 1) -1/6 (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (sin x) (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (+ (* -1/5040 (* x x)) 1/120) 1/120 1/6 (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (- (* (* (cos x) eps) -1/2) (sin x)) (* (* (cos x) eps) -1/2) (* (cos x) eps) (cos x) (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) (- (* 1/24 (* x x)) 1/2) (* 1/24 (* x x)))
2.0ms
eps
@-inf
((- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (- (* (* (cos x) eps) -1/2) (sin x)) (* (* (cos x) eps) -1/2) (* (cos x) eps) (cos x) (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* (+ (* -1/720 (* x x)) 1/24) (* x x)) (+ (* -1/720 (* x x)) 1/24) -1/720 (* x x) x 1/24 1/2 1 eps -1/2 (sin x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (sin x) (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (sin x) (* (+ (* (* x x) -1/6) 1) x) (+ (* (* x x) -1/6) 1) -1/6 (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (sin x) (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (+ (* -1/5040 (* x x)) 1/120) 1/120 1/6 (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (- (* (* (cos x) eps) -1/2) (sin x)) (* (* (cos x) eps) -1/2) (* (cos x) eps) (cos x) (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) (- (* 1/24 (* x x)) 1/2) (* 1/24 (* x x)))
2.0ms
eps
@0
((- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (- (* (* (cos x) eps) -1/2) (sin x)) (* (* (cos x) eps) -1/2) (* (cos x) eps) (cos x) (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* (+ (* -1/720 (* x x)) 1/24) (* x x)) (+ (* -1/720 (* x x)) 1/24) -1/720 (* x x) x 1/24 1/2 1 eps -1/2 (sin x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (sin x) (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (sin x) (* (+ (* (* x x) -1/6) 1) x) (+ (* (* x x) -1/6) 1) -1/6 (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (sin x) (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (+ (* -1/5040 (* x x)) 1/120) 1/120 1/6 (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (- (* (* (cos x) eps) -1/2) (sin x)) (* (* (cos x) eps) -1/2) (* (cos x) eps) (cos x) (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) (- (* 1/24 (* x x)) 1/2) (* 1/24 (* x x)))

rewrite172.0ms (1.6%)

Memory
0.3MiB live, 231.1MiB allocated; 22ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05353976
05863802
130293802
086333660
Stop Event
iter limit
node limit
iter limit
Counts
193 → 342
Calls
Call 1
Inputs
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps)
(-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x))
(*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64))
(*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps)
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64))
(*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x))
(fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64))
#s(literal -1/720 binary64)
(*.f64 x x)
x
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
eps
#s(literal -1/2 binary64)
(sin.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
(*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x)))
(neg.f64 eps)
#s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
(*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x)))
#s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x)
(fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64))
#s(literal -1/6 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
(*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x)))
#s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x)
(fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64))
(-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64))
(*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64))
#s(literal 1/120 binary64)
#s(literal 1/6 binary64)
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps)
(-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x))
(*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64))
(*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps)
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64))
(*.f64 #s(literal 1/24 binary64) (*.f64 x x))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) eps)) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* -1 (* x (cos (- (* 1/2 (PI)) eps))))) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* x (+ 1/2 (* -1/2 (sin (- (* 1/2 (PI)) eps)))))))) 1)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) eps)) (* x (+ (* -1 (cos (- (* 1/2 (PI)) eps))) (* x (+ 1/2 (+ (* -1/2 (sin (- (* 1/2 (PI)) eps))) (* 1/6 (* x (cos (- (* 1/2 (PI)) eps)))))))))) 1)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* -1/2 (pow eps 2))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (+ (* -1 (* eps x)) (* -1/2 (pow eps 2)))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* 1/4 (* (pow eps 2) x)))))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* x (+ (* 1/6 (* eps x)) (* 1/4 (pow eps 2)))))))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1/2 eps)))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (+ (* -1 x) (* -1/2 eps))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (* 1/4 (* eps x)) 1)))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (+ (* -1/2 eps) (* x (- (* x (+ (* 1/6 x) (* 1/4 eps))) 1)))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (* -1/2 eps)))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (+ (* -1/2 eps) (* 1/4 (* eps (pow x 2))))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (+ (* -1/2 eps) (* (pow x 2) (+ (* -1/48 (* eps (pow x 2))) (* 1/4 eps))))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (+ (* -1/2 eps) (* (pow x 2) (+ (* 1/4 eps) (* (pow x 2) (+ (* -1/48 eps) (* 1/1440 (* eps (pow x 2))))))))))
#s(approx (* (cos x) eps) #s(hole binary64 eps))
#s(approx (* (cos x) eps) #s(hole binary64 (+ eps (* -1/2 (* eps (pow x 2))))))
#s(approx (* (cos x) eps) #s(hole binary64 (+ eps (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2))))))))
#s(approx (* (cos x) eps) #s(hole binary64 (+ eps (* (pow x 2) (+ (* -1/2 eps) (* (pow x 2) (+ (* -1/720 (* eps (pow x 2))) (* 1/24 eps))))))))
#s(approx (cos x) #s(hole binary64 1))
#s(approx (cos x) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))))
#s(approx (cos x) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 1))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) #s(hole binary64 -1/2))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) #s(hole binary64 (- (* 1/24 (pow x 2)) 1/2)))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) #s(hole binary64 (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) (* x x)) #s(hole binary64 (* 1/24 (pow x 2))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) (* x x)) #s(hole binary64 (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2))))))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 1/24))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 (+ 1/24 (* -1/720 (pow x 2)))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#s(approx x #s(hole binary64 x))
#s(approx (sin x) #s(hole binary64 x))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* -1/6 (pow x 2))))))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))))
#s(approx (sin x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos eps) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* -1 (* x (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* -1 (* eps x))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* 1/6 (* eps (pow x 2)))))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps)))))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* x (+ (* -1 eps) (* (pow x 2) (+ (* 1/6 eps) (* (pow x 2) (+ (* -1/120 eps) (* 1/5040 (* eps (pow x 2)))))))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 x))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* x (+ 1 (* -1/6 (pow x 2))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))))
#s(approx (* (+ (* (* x x) -1/6) 1) x) #s(hole binary64 x))
#s(approx (* (+ (* (* x x) -1/6) 1) x) #s(hole binary64 (* x (+ 1 (* -1/6 (pow x 2))))))
#s(approx (+ (* (* x x) -1/6) 1) #s(hole binary64 1))
#s(approx (+ (* (* x x) -1/6) 1) #s(hole binary64 (+ 1 (* -1/6 (pow x 2)))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 1))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (+ 1 (* -1/6 (pow x 2)))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6)))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6)))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 -1/6))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (- (* 1/120 (pow x 2)) 1/6)))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6)))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* 1/120 (pow x 2))))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2))))))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 1/120))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 (+ 1/120 (* -1/5040 (pow x 2)))))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) #s(hole binary64 1))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))))
#s(approx (- (* 1/24 (* x x)) 1/2) #s(hole binary64 -1/2))
#s(approx (- (* 1/24 (* x x)) 1/2) #s(hole binary64 (- (* 1/24 (pow x 2)) 1/2)))
#s(approx (* 1/24 (* x x)) #s(hole binary64 (* 1/24 (pow x 2))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) (+ eps x))) (cos x))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* eps (- (* -1/2 (* eps (cos x))) (sin x)))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (- (* -1/2 (* eps (cos x))) (sin x))))
#s(approx (* (* (cos x) eps) -1/2) #s(hole binary64 (* -1/2 (* eps (cos x)))))
#s(approx (* (cos x) eps) #s(hole binary64 (* eps (cos x))))
#s(approx (cos x) #s(hole binary64 (cos x)))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (* -1/720 (pow x 6))))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/24 (/ 1 (pow x 2))) (+ 1/720 (/ 1/2 (pow x 4)))))))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (+ (* 1/24 (/ 1 (pow x 2))) (/ 1 (pow x 6))) (+ 1/720 (/ 1/2 (pow x 4)))))))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) #s(hole binary64 (* -1/720 (pow x 4))))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) #s(hole binary64 (* (pow x 4) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) #s(hole binary64 (* (pow x 4) (- (* 1/24 (/ 1 (pow x 2))) (+ 1/720 (/ 1/2 (pow x 4)))))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) (* x x)) #s(hole binary64 (* -1/720 (pow x 4))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) (* x x)) #s(hole binary64 (* (pow x 4) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 (* -1/720 (pow x 2))))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(hole binary64 (* (pow x 2) (- (* 1/24 (/ 1 (pow x 2))) 1/720))))
#s(approx (sin x) #s(hole binary64 (sin x)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (+ eps x)) (cos x))))
#s(approx (* (neg eps) (sin x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1/5040 (pow x 7))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* (pow x 7) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* (pow x 7) (- (* 1/120 (/ 1 (pow x 2))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* (pow x 7) (- (+ (* 1/120 (/ 1 (pow x 2))) (/ 1 (pow x 6))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (* (+ (* (* x x) -1/6) 1) x) #s(hole binary64 (* -1/6 (pow x 3))))
#s(approx (* (+ (* (* x x) -1/6) 1) x) #s(hole binary64 (* (pow x 3) (- (/ 1 (pow x 2)) 1/6))))
#s(approx (+ (* (* x x) -1/6) 1) #s(hole binary64 (* -1/6 (pow x 2))))
#s(approx (+ (* (* x x) -1/6) 1) #s(hole binary64 (* (pow x 2) (- (/ 1 (pow x 2)) 1/6))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* -1/5040 (pow x 6))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (* 1/120 (/ 1 (pow x 2))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(hole binary64 (* (pow x 6) (- (+ (* 1/120 (/ 1 (pow x 2))) (/ 1 (pow x 6))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (* -1/5040 (pow x 4))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (* (pow x 4) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(hole binary64 (* (pow x 4) (- (* 1/120 (/ 1 (pow x 2))) (+ 1/5040 (/ 1/6 (pow x 4)))))))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* -1/5040 (pow x 4))))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) #s(hole binary64 (* (pow x 4) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 (* -1/5040 (pow x 2))))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(hole binary64 (* (pow x 2) (- (* 1/120 (/ 1 (pow x 2))) 1/5040))))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (* 1/24 (pow x 4))))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 4) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) #s(hole binary64 (* (pow x 4) (- (+ 1/24 (/ 1 (pow x 4))) (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (- (* 1/24 (* x x)) 1/2) #s(hole binary64 (* 1/24 (pow x 2))))
#s(approx (- (* 1/24 (* x x)) 1/2) #s(hole binary64 (* (pow x 2) (- 1/24 (* 1/2 (/ 1 (pow x 2)))))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (+ (* -1 x) (* 1/2 (PI))) eps)) (cos x))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- eps (* -1 x))) (cos x))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1 (* (pow x 7) (- 1/5040 (* 1/120 (/ 1 (pow x 2))))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1 (* (pow x 7) (- (+ 1/5040 (/ 1/6 (pow x 4))) (* 1/120 (/ 1 (pow x 2))))))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) #s(hole binary64 (* -1 (* (pow x 7) (- (+ 1/5040 (/ 1/6 (pow x 4))) (+ (* 1/120 (/ 1 (pow x 2))) (/ 1 (pow x 6))))))))
#s(approx (* (+ (* (* x x) -1/6) 1) x) #s(hole binary64 (* -1 (* (pow x 3) (- 1/6 (/ 1 (pow x 2)))))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (* 1/2 (PI)) x)) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* -1 (* eps (cos (- (* 1/2 (PI)) x))))) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* -1/2 (* eps (sin (- (* 1/2 (PI)) x))))))) (cos x))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (+ (sin (- (* 1/2 (PI)) x)) (* eps (+ (* -1 (cos (- (* 1/2 (PI)) x))) (* eps (+ (* -1/2 (sin (- (* 1/2 (PI)) x))) (* 1/6 (* eps (cos (- (* 1/2 (PI)) x))))))))) (cos x))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* eps (+ (* -1 (sin x)) (* -1/2 (* eps (cos x)))))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1 (sin x))))
#s(approx eps #s(hole binary64 eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* -1/2 (* eps (cos x))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))))
#s(approx (neg eps) #s(hole binary64 (* -1 eps)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* -1/2 (* (pow eps 2) (cos x)))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) #s(hole binary64 (* (pow eps 2) (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1/2 (* eps (cos x)))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* eps (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(hole binary64 (- (sin (- (+ (* -1 eps) (* 1/2 (PI))) x)) (cos x))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) #s(hole binary64 (* -1 (* eps (+ (* 1/2 (cos x)) (/ (sin x) eps))))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- x (* -1 eps))) (cos x))))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x)) eps)
(*.f64 eps (-.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64)))) (neg.f64 (fma.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps) (sin.f64 x))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x))))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64))) (fma.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps) (sin.f64 x)))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x)))))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 2 binary64)) (fma.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps) (sin.f64 x))) (/.f64 (pow.f64 (sin.f64 x) #s(literal 2 binary64)) (fma.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps) (sin.f64 x))))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x))))) (/.f64 (pow.f64 (sin.f64 x) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x))))))
(-.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x))
(*.f64 #s(literal -1/2 binary64) (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps))
(*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64))
(*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps))
(*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps)
(*.f64 eps #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 1 binary64))))))
(/.f64 (neg.f64 (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x))))
(/.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)) #s(literal 1 binary64)) (+.f64 (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 1 binary64)))))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)))) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x))))))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) x) x #s(literal 1 binary64))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 2 binary64)) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 1 binary64))))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)))) (/.f64 (pow.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)))))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 x x)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))) #s(literal 1/8 binary64))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64)))
(/.f64 (-.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))) #s(literal 1/8 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 2 binary64)) (fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 x x) #s(literal 1/2 binary64))))
(-.f64 (/.f64 (*.f64 (pow.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64))))) (/.f64 #s(literal 1/8 binary64) (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64))))))
(-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64))
(*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x)
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) (*.f64 x x))
(*.f64 (*.f64 x x) (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)))
(fma.f64 (*.f64 #s(literal 1/24 binary64) x) x (*.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) (*.f64 x x)))
(fma.f64 (*.f64 #s(literal 1/24 binary64) x) x (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) #s(literal -1/720 binary64))))
(fma.f64 (*.f64 x x) #s(literal 1/24 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) (*.f64 x x)))
(fma.f64 (*.f64 x x) #s(literal 1/24 binary64) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) #s(literal -1/720 binary64))))
(fma.f64 #s(literal 1/24 binary64) (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) (*.f64 x x)))
(fma.f64 #s(literal 1/24 binary64) (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) #s(literal -1/720 binary64))))
(+.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) (*.f64 x x)))
(+.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) #s(literal -1/720 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 2 binary64)) #s(literal 1/576 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 1/24 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/576 binary64) (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 x x) #s(literal -1/720 binary64)))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/373248000 binary64) (pow.f64 x #s(literal 6 binary64)) #s(literal 1/13824 binary64))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 1/24 binary64))))))
(/.f64 (neg.f64 (+.f64 #s(literal 1/13824 binary64) (*.f64 #s(literal -1/373248000 binary64) (pow.f64 x #s(literal 6 binary64))))) (neg.f64 (+.f64 #s(literal 1/576 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 x x) #s(literal -1/720 binary64)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 2 binary64)) #s(literal 1/576 binary64)) (-.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 1/24 binary64)))
(/.f64 (-.f64 #s(literal 1/576 binary64) (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 x x) #s(literal -1/720 binary64))))
(/.f64 (fma.f64 #s(literal -1/373248000 binary64) (pow.f64 x #s(literal 6 binary64)) #s(literal 1/13824 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1/576 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 1/24 binary64)))))
(/.f64 (+.f64 #s(literal 1/13824 binary64) (*.f64 #s(literal -1/373248000 binary64) (pow.f64 x #s(literal 6 binary64)))) (+.f64 #s(literal 1/576 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 x x) #s(literal -1/720 binary64))))))
(fma.f64 (*.f64 #s(literal -1/720 binary64) x) x #s(literal 1/24 binary64))
(fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64))
(fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 1/24 binary64))) (/.f64 #s(literal 1/576 binary64) (-.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 1/24 binary64))))
(-.f64 (/.f64 #s(literal 1/576 binary64) (-.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 x x) #s(literal -1/720 binary64)))) (/.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 x x) #s(literal -1/720 binary64)))))
(-.f64 #s(literal 1/24 binary64) (*.f64 #s(literal 1/720 binary64) (*.f64 x x)))
(+.f64 (*.f64 (*.f64 x x) #s(literal -1/720 binary64)) #s(literal 1/24 binary64))
(+.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 x x) #s(literal -1/720 binary64)))
#s(literal -1/720 binary64)
(*.f64 (neg.f64 (fabs.f64 x)) (neg.f64 (fabs.f64 x)))
(*.f64 (fabs.f64 (fabs.f64 x)) (fabs.f64 (fabs.f64 x)))
(*.f64 (exp.f64 (log.f64 x)) (exp.f64 (log.f64 x)))
(*.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)))
(*.f64 (fabs.f64 x) (fabs.f64 x))
(*.f64 (neg.f64 x) (neg.f64 x))
(*.f64 x x)
(pow.f64 (exp.f64 (log.f64 x)) #s(literal 2 binary64))
(pow.f64 (fabs.f64 x) #s(literal 2 binary64))
(pow.f64 (*.f64 x x) #s(literal 1 binary64))
(pow.f64 (neg.f64 x) #s(literal 2 binary64))
(pow.f64 x #s(literal 2 binary64))
(fabs.f64 (*.f64 x x))
(exp.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))))
x
#s(literal 1/24 binary64)
#s(literal 1/2 binary64)
#s(literal 1 binary64)
eps
#s(literal -1/2 binary64)
(sin.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
(*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x)))
(*.f64 #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x)) (neg.f64 eps))
(neg.f64 (*.f64 eps #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
(*.f64 #s(literal -1 binary64) eps)
(*.f64 eps #s(literal -1 binary64))
(neg.f64 eps)
#s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
(*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x)))
(*.f64 #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x)) (neg.f64 eps))
(neg.f64 (*.f64 eps #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
#s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x)
(*.f64 x (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) x (*.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) x))
(fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/6 binary64))))
(+.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/6 binary64))))
(+.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) x))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal -1/216 binary64)))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 1 binary64))))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/6 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal -1/216 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/6 binary64))))))
(/.f64 (fma.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 1 binary64)))))
(fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 x x) #s(literal 1 binary64))
(fma.f64 x (*.f64 x #s(literal -1/6 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))) (/.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/6 binary64) (*.f64 x x)))
(+.f64 (*.f64 (*.f64 x x) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))
#s(literal -1/6 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))))
(*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x)))
(*.f64 #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x)) (neg.f64 eps))
(neg.f64 (*.f64 eps #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))))
#s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))
(*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x)
(*.f64 x (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) #s(literal 1 binary64)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))) #s(literal 1 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))) #s(literal 1 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))) #s(literal 1 binary64)))
(/.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)) #s(literal 1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))) #s(literal 1 binary64)))))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) x) x #s(literal 1 binary64))
(fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) #s(literal 1 binary64))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))) #s(literal 1 binary64))))
(+.f64 (*.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 2 binary64)) #s(literal 1/36 binary64))) (neg.f64 (fma.f64 (*.f64 x x) #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) #s(literal 1/6 binary64))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))) #s(literal 1/216 binary64))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 2 binary64)) (+.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (fma.f64 (*.f64 x x) #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)))
(/.f64 (-.f64 (*.f64 (pow.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))) #s(literal 1/216 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 2 binary64)) (+.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 2 binary64)) (fma.f64 (*.f64 x x) #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) #s(literal 1/6 binary64))) (/.f64 #s(literal 1/36 binary64) (fma.f64 (*.f64 x x) #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) #s(literal 1/6 binary64))))
(-.f64 (/.f64 (*.f64 (pow.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 2 binary64)) (+.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))))) (/.f64 #s(literal 1/216 binary64) (+.f64 (pow.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 2 binary64)) (+.f64 #s(literal 1/36 binary64) (*.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))))))
(-.f64 (*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64))
(*.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) x) x)
(*.f64 (*.f64 x x) #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)))
(*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64))
#s(literal 1/120 binary64)
#s(literal 1/6 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x)) eps)
(*.f64 eps (-.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64)))) (neg.f64 (fma.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps) (sin.f64 x))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x))))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64))) (fma.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps) (sin.f64 x)))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x)))))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 2 binary64)) (fma.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps) (sin.f64 x))) (/.f64 (pow.f64 (sin.f64 x) #s(literal 2 binary64)) (fma.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps) (sin.f64 x))))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x))))) (/.f64 (pow.f64 (sin.f64 x) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x))))))
(-.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x))
(*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64))
(*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) (*.f64 #s(literal -1/2 binary64) eps))
(*.f64 #s(literal -1/2 binary64) (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps))
(*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps)
(*.f64 eps #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 1 binary64))))
(/.f64 (neg.f64 (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 1 binary64))))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 1 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)))) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x)))))
(/.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)) #s(literal 1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 1 binary64)))))
(fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x #s(literal 1 binary64))
(fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x))) (/.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 x x)) (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) x) x))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (fma.f64 (*.f64 x x) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (*.f64 x x) #s(literal 1/24 binary64) #s(literal 1/2 binary64)))
(/.f64 (-.f64 (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 1/13824 binary64)) #s(literal 1/8 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (fma.f64 (*.f64 x x) #s(literal 1/24 binary64) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 x x) #s(literal 1/24 binary64) #s(literal 1/2 binary64))))
(-.f64 (/.f64 (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal 1/13824 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))) (/.f64 #s(literal 1/8 binary64) (+.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))))))
(-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64))
(*.f64 (*.f64 #s(literal 1/24 binary64) x) x)
(*.f64 (*.f64 x x) #s(literal 1/24 binary64))
(*.f64 #s(literal 1/24 binary64) (*.f64 x x))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (neg.f64 x) (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps)) (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps))) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (fma.f64 (fma.f64 (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps)) #s(literal -1/2 binary64) #s(literal 1/2 binary64)) x (neg.f64 (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps)))) x (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps))) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (fma.f64 (+.f64 (fma.f64 (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps)) #s(literal -1/2 binary64) #s(literal 1/2 binary64)) (*.f64 (*.f64 #s(literal 1/6 binary64) x) (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps)))) x (neg.f64 (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps)))) x (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps))) #s(literal 1 binary64)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (fma.f64 (*.f64 (*.f64 eps eps) x) #s(literal 1/4 binary64) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 eps eps) (*.f64 (*.f64 x eps) #s(literal 1/6 binary64))) x (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 x eps)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (* (* (cos x) eps) -1/2) (*.f64 #s(literal -1/2 binary64) eps))
#s(approx (* (* (cos x) eps) -1/2) (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/4 binary64) (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (* (* (cos x) eps) -1/2) (fma.f64 (fma.f64 #s(literal -1/48 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal 1/4 binary64) eps)) (*.f64 x x) (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (* (* (cos x) eps) -1/2) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/1440 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal -1/48 binary64) eps)) (*.f64 x x) (*.f64 #s(literal 1/4 binary64) eps)) (*.f64 x x) (*.f64 #s(literal -1/2 binary64) eps)))
#s(approx (* (cos x) eps) eps)
#s(approx (* (cos x) eps) (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/2 binary64) eps))
#s(approx (* (cos x) eps) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) eps)) (*.f64 x x) eps))
#s(approx (* (cos x) eps) (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/720 binary64) (*.f64 #s(literal 1/24 binary64) eps)) (*.f64 x x) (*.f64 #s(literal -1/2 binary64) eps)) (*.f64 x x) eps))
#s(approx (cos x) #s(literal 1 binary64))
#s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) #s(literal 1 binary64))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) #s(literal -1/2 binary64))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) (* x x)) (*.f64 (*.f64 x x) #s(literal 1/24 binary64)))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) (* x x)) (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)) x) x))
#s(approx (+ (* -1/720 (* x x)) 1/24) #s(literal 1/24 binary64))
#s(approx (+ (* -1/720 (* x x)) 1/24) (fma.f64 (*.f64 x x) #s(literal -1/720 binary64) #s(literal 1/24 binary64)))
#s(approx (* x x) (*.f64 x x))
#s(approx x x)
#s(approx (sin x) x)
#s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))
#s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))
#s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (neg.f64 x) (sin.f64 eps) (cos.f64 eps)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (cos.f64 eps) #s(literal -1/2 binary64) #s(literal 1/2 binary64)) x) (sin.f64 eps)) x (cos.f64 eps)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (-.f64 (*.f64 (+.f64 (fma.f64 (*.f64 (sin.f64 eps) x) #s(literal 1/6 binary64) (*.f64 (cos.f64 eps) #s(literal -1/2 binary64))) #s(literal 1/2 binary64)) x) (sin.f64 eps)) x (cos.f64 eps)) #s(literal 1 binary64)))
#s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 eps) x))
#s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/6 binary64) (neg.f64 eps)) x))
#s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/120 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal 1/6 binary64) eps)) (*.f64 x x) (neg.f64 eps)) x))
#s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/5040 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal -1/120 binary64) eps)) (*.f64 x x) (*.f64 #s(literal 1/6 binary64) eps)) (*.f64 x x) (neg.f64 eps)) x))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x)
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))
#s(approx (* (+ (* (* x x) -1/6) 1) x) x)
#s(approx (* (+ (* (* x x) -1/6) 1) x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))
#s(approx (+ (* (* x x) -1/6) 1) #s(literal 1 binary64))
#s(approx (+ (* (* x x) -1/6) 1) (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) #s(literal 1 binary64))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) #s(literal -1/6 binary64))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (*.f64 (*.f64 x x) #s(literal 1/120 binary64)))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))))
#s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64))
#s(approx (+ (* -1/5040 (* x x)) 1/120) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64)))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) #s(literal 1 binary64))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64)))
#s(approx (- (* 1/24 (* x x)) 1/2) #s(literal -1/2 binary64))
#s(approx (- (* 1/24 (* x x)) 1/2) (-.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) #s(literal 1/2 binary64)))
#s(approx (* 1/24 (* x x)) (*.f64 (*.f64 x x) #s(literal 1/24 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (sin.f64 (-.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) eps) x)) (cos.f64 x)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)))
#s(approx (* (* (cos x) eps) -1/2) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)))
#s(approx (* (cos x) eps) (*.f64 (cos.f64 x) eps))
#s(approx (cos x) (cos.f64 x))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal -1/720 binary64)))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64)) #s(literal 1/720 binary64))))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) (-.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64)) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/2 binary64) (pow.f64 x #s(literal 4 binary64))))))
#s(approx (+ (* (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) (-.f64 (-.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64) (pow.f64 x #s(literal -6 binary64))) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/2 binary64) (pow.f64 x #s(literal 4 binary64))))))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/720 binary64)))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64)) #s(literal 1/720 binary64))))
#s(approx (- (* (+ (* -1/720 (* x x)) 1/24) (* x x)) 1/2) (*.f64 (-.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64)) #s(literal 1/720 binary64)) (/.f64 #s(literal 1/2 binary64) (pow.f64 x #s(literal 4 binary64)))) (pow.f64 x #s(literal 4 binary64))))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) (* x x)) (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/720 binary64)))
#s(approx (* (+ (* -1/720 (* x x)) 1/24) (* x x)) (*.f64 (pow.f64 x #s(literal 4 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64)) #s(literal 1/720 binary64))))
#s(approx (+ (* -1/720 (* x x)) 1/24) (*.f64 (*.f64 x x) #s(literal -1/720 binary64)))
#s(approx (+ (* -1/720 (* x x)) 1/24) (*.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/24 binary64)) #s(literal 1/720 binary64)) (*.f64 x x)))
#s(approx (sin x) (sin.f64 x))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))
#s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (*.f64 (pow.f64 x #s(literal 7 binary64)) #s(literal -1/5040 binary64)))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (*.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64)) (pow.f64 x #s(literal 7 binary64))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (*.f64 (-.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 x #s(literal 4 binary64)))) (pow.f64 x #s(literal 7 binary64))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (*.f64 (-.f64 (-.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64) (pow.f64 x #s(literal -6 binary64))) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 x #s(literal 4 binary64)))) (pow.f64 x #s(literal 7 binary64))))
#s(approx (* (+ (* (* x x) -1/6) 1) x) (*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal -1/6 binary64)))
#s(approx (* (+ (* (* x x) -1/6) 1) x) (*.f64 (-.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/6 binary64)) (pow.f64 x #s(literal 3 binary64))))
#s(approx (+ (* (* x x) -1/6) 1) (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))
#s(approx (+ (* (* x x) -1/6) 1) (*.f64 (-.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/6 binary64)) (*.f64 x x)))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) #s(literal -1/5040 binary64)))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) (-.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 x #s(literal 4 binary64))))))
#s(approx (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 6 binary64)) (-.f64 (-.f64 (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64) (pow.f64 x #s(literal -6 binary64))) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 x #s(literal 4 binary64))))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/5040 binary64)))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (*.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64)) (pow.f64 x #s(literal 4 binary64))))
#s(approx (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (*.f64 (-.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 x #s(literal 4 binary64)))) (pow.f64 x #s(literal 4 binary64))))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/5040 binary64)))
#s(approx (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) (*.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64)) (pow.f64 x #s(literal 4 binary64))))
#s(approx (+ (* -1/5040 (* x x)) 1/120) (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)))
#s(approx (+ (* -1/5040 (* x x)) 1/120) (*.f64 (-.f64 (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64)) #s(literal 1/5040 binary64)) (*.f64 x x)))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) (*.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal 1/24 binary64)))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) (*.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/2 binary64))) (pow.f64 x #s(literal 4 binary64))))
#s(approx (+ (* (- (* 1/24 (* x x)) 1/2) (* x x)) 1) (*.f64 (-.f64 (+.f64 (pow.f64 x #s(literal -4 binary64)) #s(literal 1/24 binary64)) (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/2 binary64))) (pow.f64 x #s(literal 4 binary64))))
#s(approx (- (* 1/24 (* x x)) 1/2) (*.f64 (*.f64 x x) #s(literal 1/24 binary64)))
#s(approx (- (* 1/24 (* x x)) 1/2) (*.f64 (-.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/2 binary64))) (*.f64 x x)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (neg.f64 x)) eps)) (cos.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 (-.f64 eps (neg.f64 x))) (cos.f64 x)))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (neg.f64 (*.f64 (-.f64 #s(literal 1/5040 binary64) (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64))) (pow.f64 x #s(literal 7 binary64)))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (neg.f64 (*.f64 (-.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 x #s(literal 4 binary64))) #s(literal 1/5040 binary64)) (*.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64))) (pow.f64 x #s(literal 7 binary64)))))
#s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) (neg.f64 (*.f64 (-.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 x #s(literal 4 binary64))) #s(literal 1/5040 binary64)) (fma.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/120 binary64) (pow.f64 x #s(literal -6 binary64)))) (pow.f64 x #s(literal 7 binary64)))))
#s(approx (* (+ (* (* x x) -1/6) 1) x) (*.f64 (pow.f64 (neg.f64 x) #s(literal 3 binary64)) (-.f64 #s(literal 1/6 binary64) (pow.f64 x #s(literal -2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x)) (cos.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (neg.f64 eps) (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x)) (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x))) (cos.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x)) eps) #s(literal -1/2 binary64) (neg.f64 (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x)))) eps (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x))) (cos.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (fma.f64 (fma.f64 (fma.f64 (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x)) #s(literal -1/2 binary64) (*.f64 (*.f64 #s(literal 1/6 binary64) eps) (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x)))) eps (neg.f64 (cos.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x)))) eps (sin.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (PI.f64)) x))) (cos.f64 x)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) eps) (cos.f64 x) (neg.f64 (sin.f64 x))) eps))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (neg.f64 (sin.f64 x)))
#s(approx eps eps)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) eps) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (sin.f64 x))) eps (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
#s(approx (neg eps) (neg.f64 eps))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (*.f64 (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)) (cos.f64 x)))
#s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (/.f64 (neg.f64 (sin.f64 x)) eps)) (*.f64 eps eps)))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (/.f64 (neg.f64 (sin.f64 x)) eps)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (sin.f64 (-.f64 (fma.f64 #s(literal 1/2 binary64) (PI.f64) (neg.f64 eps)) x)) (cos.f64 x)))
#s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 (neg.f64 eps) (fma.f64 #s(literal 1/2 binary64) (cos.f64 x) (/.f64 (sin.f64 x) eps))))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 (-.f64 x (neg.f64 eps))) (cos.f64 x)))

eval110.0ms (1%)

Memory
-12.4MiB live, 120.0MiB allocated; 56ms collecting garbage
Compiler

Compiled 22 143 to 3 150 computations (85.8% saved)

prune52.0ms (0.5%)

Memory
-15.3MiB live, 90.5MiB allocated; 23ms collecting garbage
Pruning

31 alts after pruning (21 fresh and 10 done)

PrunedKeptTotal
New5155520
Fresh01616
Picked055
Done055
Total51531546
Accuracy
100.0%
Counts
546 → 31
Alt Table
Click to see full alt table
StatusAccuracyProgram
51.4%
(-.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
51.5%
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
51.4%
(-.f64 (sin.f64 #s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (neg.f64 eps)) x))) (cos.f64 x))
51.3%
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
80.8%
(*.f64 (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64)))) #s(literal -2 binary64))
99.2%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
99.0%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
98.6%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
98.9%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
98.5%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
98.6%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
98.7%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (* (cos x) eps) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
98.2%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
97.7%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/4 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
97.7%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
51.0%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
97.8%
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
49.9%
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
98.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
97.7%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) x)) eps))
98.9%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 #s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 #s(literal 1/4 binary64) x)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
78.1%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
77.6%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))))))
77.7%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
77.7%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
77.6%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
49.7%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 #s(approx (+ (* (* x x) -1/6) 1) (*.f64 (*.f64 x x) #s(literal -1/6 binary64))) x))))
77.3%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
97.7%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) eps))
94.0%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (fma.f64 #s(literal 1/6 binary64) x (neg.f64 (/.f64 (+.f64 (/.f64 x eps) #s(literal 1/2 binary64)) eps))) (*.f64 eps eps)))) eps))
77.3%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
Compiler

Compiled 2 635 to 1 059 computations (59.8% saved)

regimes38.0ms (0.4%)

Memory
13.9MiB live, 58.1MiB allocated; 8ms collecting garbage
Counts
49 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 #s(approx (+ (* (* x x) -1/6) 1) (*.f64 (*.f64 x x) #s(literal -1/6 binary64))) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/4 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (*.f64 eps x) #s(literal 1/4 binary64) (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (fma.f64 #s(literal 1/6 binary64) x (neg.f64 (/.f64 (+.f64 (/.f64 x eps) #s(literal 1/2 binary64)) eps))) (*.f64 eps eps)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x (*.f64 #s(literal 1/4 binary64) eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x) eps (*.f64 #s(literal 1/4 binary64) (*.f64 eps eps))) x (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(literal -1/2 binary64)) eps) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (* (cos x) eps) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 #s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 #s(literal 1/4 binary64) x)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
(-.f64 (sin.f64 (+.f64 (+.f64 eps x) (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(-.f64 (sin.f64 #s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (neg.f64 eps)) x))) (cos.f64 x))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
(-.f64 (sin.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64)))) (cos.f64 x))
(*.f64 (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64)))) #s(literal -2 binary64))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
Calls

3 calls:

13.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
11.0ms
eps
11.0ms
x
Results
AccuracySegmentsBranch
99.2%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
99.2%1x
99.2%1eps
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes76.0ms (0.7%)

Memory
7.8MiB live, 52.3MiB allocated; 7ms collecting garbage
Counts
46 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 #s(approx (+ (* (* x x) -1/6) 1) (*.f64 (*.f64 x x) #s(literal -1/6 binary64))) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/4 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (*.f64 eps x) #s(literal 1/4 binary64) (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (fma.f64 #s(literal 1/6 binary64) x (neg.f64 (/.f64 (+.f64 (/.f64 x eps) #s(literal 1/2 binary64)) eps))) (*.f64 eps eps)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x (*.f64 #s(literal 1/4 binary64) eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x) eps (*.f64 #s(literal 1/4 binary64) (*.f64 eps eps))) x (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(literal -1/2 binary64)) eps) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (* (cos x) eps) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 #s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 #s(literal 1/4 binary64) x)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
(-.f64 (sin.f64 (+.f64 (+.f64 eps x) (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(-.f64 (sin.f64 #s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (neg.f64 eps)) x))) (cos.f64 x))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
(-.f64 (sin.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64)))) (cos.f64 x))
(*.f64 (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64)))) #s(literal -2 binary64))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) (sin.f64 x)) eps))
Calls

3 calls:

55.0ms
x
11.0ms
eps
8.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
AccuracySegmentsBranch
99.2%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
99.2%1x
99.2%1eps
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes43.0ms (0.4%)

Memory
-2.3MiB live, 42.8MiB allocated; 7ms collecting garbage
Counts
42 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 #s(approx (+ (* (* x x) -1/6) 1) (*.f64 (*.f64 x x) #s(literal -1/6 binary64))) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/4 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (*.f64 eps x) #s(literal 1/4 binary64) (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (fma.f64 #s(literal 1/6 binary64) x (neg.f64 (/.f64 (+.f64 (/.f64 x eps) #s(literal 1/2 binary64)) eps))) (*.f64 eps eps)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x (*.f64 #s(literal 1/4 binary64) eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x) eps (*.f64 #s(literal 1/4 binary64) (*.f64 eps eps))) x (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(literal -1/2 binary64)) eps) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (* (cos x) eps) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 #s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 #s(literal 1/4 binary64) x)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
(-.f64 (sin.f64 (+.f64 (+.f64 eps x) (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(-.f64 (sin.f64 #s(approx (+ (neg (+ eps x)) (/ (PI) 2)) (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) (neg.f64 eps)) x))) (cos.f64 x))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
Calls

3 calls:

21.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
10.0ms
x
10.0ms
eps
Results
AccuracySegmentsBranch
99.0%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
99.0%1x
99.0%1eps
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes31.0ms (0.3%)

Memory
-6.9MiB live, 46.7MiB allocated; 12ms collecting garbage
Counts
35 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 #s(approx (+ (* (* x x) -1/6) 1) (*.f64 (*.f64 x x) #s(literal -1/6 binary64))) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/4 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (*.f64 eps x) #s(literal 1/4 binary64) (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (fma.f64 #s(literal 1/6 binary64) x (neg.f64 (/.f64 (+.f64 (/.f64 x eps) #s(literal 1/2 binary64)) eps))) (*.f64 eps eps)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x (*.f64 #s(literal 1/4 binary64) eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x) eps (*.f64 #s(literal 1/4 binary64) (*.f64 eps eps))) x (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(literal -1/2 binary64)) eps) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (* (cos x) eps) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 #s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 #s(literal 1/4 binary64) x)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 #s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 #s(literal 1/4 binary64) x)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
Calls

3 calls:

13.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
8.0ms
x
8.0ms
eps
Results
AccuracySegmentsBranch
98.9%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
98.9%1x
98.9%1eps
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes29.0ms (0.3%)

Memory
6.1MiB live, 48.9MiB allocated; 7ms collecting garbage
Counts
33 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 #s(approx (+ (* (* x x) -1/6) 1) (*.f64 (*.f64 x x) #s(literal -1/6 binary64))) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/4 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (*.f64 eps x) #s(literal 1/4 binary64) (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (fma.f64 #s(literal 1/6 binary64) x (neg.f64 (/.f64 (+.f64 (/.f64 x eps) #s(literal 1/2 binary64)) eps))) (*.f64 eps eps)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x (*.f64 #s(literal 1/4 binary64) eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x) eps (*.f64 #s(literal 1/4 binary64) (*.f64 eps eps))) x (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(literal -1/2 binary64)) eps) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (* (cos x) eps) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(literal -1/2 binary64)) eps) (sin.f64 x)) eps))
Calls

3 calls:

10.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
10.0ms
x
8.0ms
eps
Results
AccuracySegmentsBranch
98.7%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
98.7%1eps
98.7%1x
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes26.0ms (0.2%)

Memory
4.9MiB live, 50.8MiB allocated; 7ms collecting garbage
Counts
31 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 #s(approx (+ (* (* x x) -1/6) 1) (*.f64 (*.f64 x x) #s(literal -1/6 binary64))) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/4 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (*.f64 eps x) #s(literal 1/4 binary64) (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (fma.f64 #s(literal 1/6 binary64) x (neg.f64 (/.f64 (+.f64 (/.f64 x eps) #s(literal 1/2 binary64)) eps))) (*.f64 eps eps)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x (*.f64 #s(literal 1/4 binary64) eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x) eps (*.f64 #s(literal 1/4 binary64) (*.f64 eps eps))) x (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
Outputs
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
Calls

3 calls:

10.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
8.0ms
eps
7.0ms
x
Results
AccuracySegmentsBranch
98.6%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
98.6%1x
98.6%1eps
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes23.0ms (0.2%)

Memory
-1.3MiB live, 44.9MiB allocated; 4ms collecting garbage
Counts
27 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 #s(approx (+ (* (* x x) -1/6) 1) (*.f64 (*.f64 x x) #s(literal -1/6 binary64))) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/4 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (*.f64 eps x) #s(literal 1/4 binary64) (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (fma.f64 #s(literal 1/6 binary64) x (neg.f64 (/.f64 (+.f64 (/.f64 x eps) #s(literal 1/2 binary64)) eps))) (*.f64 eps eps)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x (*.f64 #s(literal 1/4 binary64) eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x) eps (*.f64 #s(literal 1/4 binary64) (*.f64 eps eps))) x (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
Outputs
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
Calls

3 calls:

9.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
7.0ms
x
7.0ms
eps
Results
AccuracySegmentsBranch
98.6%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
98.6%1x
98.6%1eps
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes19.0ms (0.2%)

Memory
32.6MiB live, 32.6MiB allocated; 0ms collecting garbage
Counts
26 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 #s(approx (+ (* (* x x) -1/6) 1) (*.f64 (*.f64 x x) #s(literal -1/6 binary64))) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/4 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (*.f64 eps x) #s(literal 1/4 binary64) (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (fma.f64 #s(literal 1/6 binary64) x (neg.f64 (/.f64 (+.f64 (/.f64 x eps) #s(literal 1/2 binary64)) eps))) (*.f64 eps eps)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x (*.f64 #s(literal 1/4 binary64) eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x) eps (*.f64 #s(literal 1/4 binary64) (*.f64 eps eps))) x (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
Calls

3 calls:

6.0ms
x
6.0ms
eps
5.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
AccuracySegmentsBranch
98.5%1x
98.5%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
98.5%1eps
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes38.0ms (0.3%)

Memory
-33.5MiB live, 24.3MiB allocated; 8ms collecting garbage
Counts
23 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 #s(approx (+ (* (* x x) -1/6) 1) (*.f64 (*.f64 x x) #s(literal -1/6 binary64))) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/4 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 #s(approx (+ (* -1/5040 (* x x)) 1/120) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (*.f64 eps x) #s(literal 1/4 binary64) (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) (*.f64 x x)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (fma.f64 #s(literal 1/6 binary64) x (neg.f64 (/.f64 (+.f64 (/.f64 x eps) #s(literal 1/2 binary64)) eps))) (*.f64 eps eps)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/36 binary64) (*.f64 eps eps) #s(literal 1/6 binary64)) x (*.f64 #s(literal 1/4 binary64) eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64))) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
Outputs
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
Calls

3 calls:

26.0ms
x
6.0ms
eps
4.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
AccuracySegmentsBranch
98.2%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
98.2%1eps
98.2%1x
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes13.0ms (0.1%)

Memory
18.3MiB live, 18.3MiB allocated; 0ms collecting garbage
Counts
16 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 #s(approx (+ (* (* x x) -1/6) 1) (*.f64 (*.f64 x x) #s(literal -1/6 binary64))) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/4 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
Calls

3 calls:

4.0ms
x
4.0ms
eps
3.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
AccuracySegmentsBranch
97.8%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
97.8%1x
97.8%1eps
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes28.0ms (0.3%)

Memory
-24.5MiB live, 20.9MiB allocated; 7ms collecting garbage
Counts
15 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 #s(approx (+ (* (* x x) -1/6) 1) (*.f64 (*.f64 x x) #s(literal -1/6 binary64))) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/6 binary64) #s(literal 1 binary64)) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) (fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (*.f64 x x) #s(literal -1/6 binary64)))))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (*.f64 x eps) #s(literal 1/4 binary64)) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) x)) eps))
Outputs
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
Calls

3 calls:

20.0ms
x
4.0ms
eps
3.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
AccuracySegmentsBranch
97.8%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
97.8%1x
97.8%1eps
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes6.0ms (0.1%)

Memory
14.4MiB live, 14.4MiB allocated; 0ms collecting garbage
Counts
6 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
Outputs
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
Calls

3 calls:

2.0ms
x
2.0ms
eps
2.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
AccuracySegmentsBranch
97.7%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
97.7%1x
97.7%1eps
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes6.0ms (0.1%)

Memory
13.0MiB live, 13.0MiB allocated; 0ms collecting garbage
Counts
5 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) #s(approx (* (+ (* (- (* (+ (* -1/5040 (* x x)) 1/120) (* x x)) 1/6) (* x x)) 1) x) x))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (*.f64 #s(literal -1/2 binary64) eps)) eps))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
Calls

3 calls:

2.0ms
eps
2.0ms
x
1.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
AccuracySegmentsBranch
77.3%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
77.3%1x
77.3%1eps
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes3.0ms (0%)

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

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
Calls

3 calls:

1.0ms
eps
1.0ms
x
1.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
AccuracySegmentsBranch
49.9%1eps
49.9%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
49.9%1x
Compiler

Compiled 9 to 10 computations (-11.1% saved)

simplify53.0ms (0.5%)

Memory
-25.1MiB live, 61.8MiB allocated; 17ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0142473
1217473
2314473
3505473
4949473
53530473
Stop Event
node limit
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 #s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 #s(literal 1/4 binary64) x)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(literal -1/2 binary64)) eps) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 #s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 #s(literal 1/4 binary64) x)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 #s(approx (+ (* 1/4 x) (* 1/6 eps)) (*.f64 #s(literal 1/4 binary64) x)) x) #s(literal 1/2 binary64))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(literal -1/2 binary64)) eps) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(literal -1/2 binary64)) eps) (sin.f64 x)) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(approx (cos x) (fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))) eps) #s(literal -1/2 binary64)) #s(approx (sin x) (*.f64 (fma.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal -1/5040 binary64) x) x #s(literal 1/120 binary64))) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x) #s(literal 1/2 binary64))) eps) #s(approx (sin x) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 x x) #s(literal 1 binary64)) x))) eps))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x)) x) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) eps) (sin x)) eps) (fma.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) #s(approx (* (- (* (* (cos x) eps) -1/2) (sin x)) eps) (fma.f64 (neg.f64 eps) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 #s(approx (- (* (* (cos x) eps) -1/2) (sin x)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
#s(approx (- (sin (+ (neg (+ eps x)) (/ (PI) 2))) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))

derivations590.0ms (5.5%)

Memory
-39.3MiB live, 424.3MiB allocated; 153ms collecting garbage
Stop Event
fuel
Compiler

Compiled 543 to 142 computations (73.8% saved)

preprocess70.0ms (0.6%)

Memory
23.4MiB live, 156.5MiB allocated; 16ms collecting garbage
Compiler

Compiled 1 134 to 326 computations (71.3% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...