2cos (problem 3.3.5)

Time bar (total: 9.5s)

start0.0ms (0%)

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

analyze87.0ms (0.9%)

Memory
13.6MiB live, 104.2MiB allocated; 10ms 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.1s (74.9%)

Memory
-165.6MiB live, 4 584.3MiB allocated; 1.8s collecting garbage
Samples
2.5s5 759×2valid
2.3s26 116×0invalid
433.0ms2 442×1valid
6.0ms55×0valid
Precisions
Click to see histograms. Total time spent on operations: 4.1s
ival-cos: 2.1s (50.8% of total)
adjust: 463.0ms (11.4% of total)
const: 413.0ms (10.2% of total)
ival-add: 271.0ms (6.7% of total)
ival-sub: 260.0ms (6.4% of total)
ival-fabs: 215.0ms (5.3% of total)
ival-mult: 159.0ms (3.9% of total)
ival-<: 128.0ms (3.2% of total)
ival-and: 74.0ms (1.8% of total)
ival-assert: 12.0ms (0.3% of total)
Bogosity

explain192.0ms (2%)

Memory
14.8MiB live, 61.0MiB allocated; 6ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1361(-1.1291066951491196e-159 3.778306524095475e-164)0-(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
00-0-eps
00-0-(+.f64 x eps)
00-0-(cos.f64 x)
00-0-(cos.f64 (+.f64 x eps))
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
-.f64(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))cancellation1370
Confusion
Predicted +Predicted -
+1360
-1119
Precision
0.9927007299270073
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+13600
-10119
Precision?
0.9927007299270073
Recall?
1.0
Freqs
test
numberfreq
0119
1137
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
119.0ms336×2valid
23.0ms176×1valid
Compiler

Compiled 47 to 22 computations (53.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 119.0ms
ival-cos: 85.0ms (71.3% of total)
adjust: 24.0ms (20.1% of total)
ival-sub: 6.0ms (5% of total)
ival-add: 4.0ms (3.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess231.0ms (2.4%)

Memory
-43.6MiB live, 41.6MiB allocated; 9ms 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.4MiB live, 0.4MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
50.3%
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 7 to 6 computations (14.3% saved)

series5.0ms (0%)

Memory
2.9MiB live, 2.9MiB 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))

rewrite135.0ms (1.4%)

Memory
8.3MiB live, 55.0MiB allocated; 2ms 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)))

eval14.0ms (0.1%)

Memory
-37.4MiB live, 10.1MiB allocated; 1ms collecting garbage
Compiler

Compiled 2 017 to 430 computations (78.7% saved)

prune6.0ms (0.1%)

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

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1056111
Fresh000
Picked011
Done000
Total1057112
Accuracy
99.8%
Counts
112 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
50.3%
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
49.9%
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))
49.8%
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
49.7%
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
99.8%
#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.8%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) (sin.f64 x)) eps))
79.9%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
Compiler

Compiled 191 to 146 computations (23.6% saved)

series20.0ms (0.2%)

Memory
11.9MiB live, 11.9MiB allocated; 0ms collecting garbage
Counts
28 → 113
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)
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
(cos.f64 (+.f64 x eps))
(+.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)))
(*.f64 (neg.f64 eps) (sin.f64 x))
(neg.f64 eps)
(-.f64 (cos.f64 (+.f64 x eps)) #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 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 x 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 (* (- (* (+ (* (* (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 (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 (* (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 (+ (* (* x x) -1/2) 1) #s(hole binary64 1))
#s(approx (+ (* (* x x) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#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 (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 (* (neg eps) (sin x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (+ (* (* x x) -1/2) 1) #s(hole binary64 (* -1/2 (pow x 2))))
#s(approx (+ (* (* x x) -1/2) 1) #s(hole binary64 (* (pow x 2) (- (/ 1 (pow x 2)) 1/2))))
#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 (* (- (* (+ (* (* (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 (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 (neg eps) #s(hole binary64 (* -1 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 (* (+ (* (* (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 (- (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)))))
Calls

6 calls:

TimeVariablePointExpression
3.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)) (cos (+ x eps)) (+ x eps) (cos x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (- (cos (+ x eps)) (cos x)) (cos x) (+ (* (* x x) -1/2) 1) (* x x))
3.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)) (cos (+ x eps)) (+ x eps) (cos x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (- (cos (+ x eps)) (cos x)) (cos x) (+ (* (* x x) -1/2) 1) (* x x))
3.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)) (cos (+ x eps)) (+ x eps) (cos x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (- (cos (+ x eps)) (cos x)) (cos x) (+ (* (* x x) -1/2) 1) (* x x))
3.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)) (cos (+ x eps)) (+ x eps) (cos x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (- (cos (+ x eps)) (cos x)) (cos x) (+ (* (* x x) -1/2) 1) (* x x))
3.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)) (cos (+ x eps)) (+ x eps) (cos x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (neg eps) (- (cos (+ x eps)) (cos x)) (cos x) (+ (* (* x x) -1/2) 1) (* x x))

rewrite202.0ms (2.1%)

Memory
-13.1MiB live, 78.5MiB allocated; 10ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04522433
04852392
126222392
0103892314
Stop Event
iter limit
node limit
iter limit
Counts
141 → 266
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)
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
(cos.f64 (+.f64 x eps))
(+.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)))
(*.f64 (neg.f64 eps) (sin.f64 x))
(neg.f64 eps)
(-.f64 (cos.f64 (+.f64 x eps)) #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 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))
(*.f64 x 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 (* (- (* (+ (* (* (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 (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 (* (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 (+ (* (* x x) -1/2) 1) #s(hole binary64 1))
#s(approx (+ (* (* x x) -1/2) 1) #s(hole binary64 (+ 1 (* -1/2 (pow x 2)))))
#s(approx (* x x) #s(hole binary64 (pow x 2)))
#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 (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 (* (neg eps) (sin x)) #s(hole binary64 (* -1 (* eps (sin x)))))
#s(approx (+ (* (* x x) -1/2) 1) #s(hole binary64 (* -1/2 (pow x 2))))
#s(approx (+ (* (* x x) -1/2) 1) #s(hole binary64 (* (pow x 2) (- (/ 1 (pow x 2)) 1/2))))
#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 (* (- (* (+ (* (* (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 (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 (neg eps) #s(hole binary64 (* -1 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 (* (+ (* (* (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 (- (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)))))
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))
(*.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 (neg.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)))) (neg.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 (sin.f64 x))))
(/.f64 (neg.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)))) (neg.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)) (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 (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 (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 (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 (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)) (+.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 (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))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) #s(literal 3 binary64)) (pow.f64 (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) eps) #s(literal 3 binary64))) (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) eps) (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) eps)) (*.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 (pow.f64 (*.f64 eps (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) #s(literal 3 binary64)) (pow.f64 (*.f64 eps (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64))) #s(literal 3 binary64))) (fma.f64 (*.f64 eps (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) (*.f64 eps (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) (-.f64 (*.f64 (*.f64 eps (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64))) (*.f64 eps (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)))) (*.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)))))))
(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 (neg.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)))) (neg.f64 (-.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))))
(/.f64 (neg.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)))) (neg.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 3 binary64)) #s(literal 1/216 binary64) (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) #s(literal 3 binary64)))) (neg.f64 (+.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)))))))
(/.f64 (neg.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)))) (neg.f64 (+.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 (-.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 (-.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 (fma.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 3 binary64)) #s(literal 1/216 binary64) (pow.f64 (*.f64 #s(literal -1/2 binary64) (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))))))
(/.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))))))
(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 (pow.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) #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 (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 (/.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) #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 (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 (*.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 (pow.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64)) #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)))))) (/.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (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)))))))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) #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 (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 (*.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) (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 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) (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)))
(/.f64 (neg.f64 (neg.f64 (pow.f64 (sin.f64 eps) #s(literal 2 binary64)))) (neg.f64 (+.f64 (cos.f64 eps) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 eps) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (cos.f64 eps) (cos.f64 eps) (+.f64 #s(literal 1 binary64) (*.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 (/.f64 (pow.f64 (cos.f64 eps) #s(literal 2 binary64)) (+.f64 (cos.f64 eps) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 (cos.f64 eps) #s(literal 1 binary64))))
(-.f64 (/.f64 (pow.f64 (cos.f64 eps) #s(literal 3 binary64)) (fma.f64 (cos.f64 eps) (cos.f64 eps) (+.f64 #s(literal 1 binary64) (*.f64 (cos.f64 eps) #s(literal 1 binary64))))) (/.f64 #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) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64))) (*.f64 (cos.f64 eps) (sin.f64 (/.f64 (PI.f64) #s(literal 2 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) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 eps) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
#s(literal 1 binary64)
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 2 binary64)))) (neg.f64 (+.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (fma.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(approx (cos x) #s(literal 1 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) #s(literal 1 binary64)))))))
(/.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 2 binary64))) (+.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) #s(literal 1 binary64))))
(/.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (fma.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(approx (cos x) #s(literal 1 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) #s(literal 1 binary64))))))
(-.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) #s(literal 1 binary64)))) (/.f64 (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) #s(literal 1 binary64)))))
(-.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (+.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (fma.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(approx (cos x) #s(literal 1 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) #s(literal 1 binary64)))))) (/.f64 (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 3 binary64)) (+.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (fma.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(approx (cos x) #s(literal 1 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) #s(literal 1 binary64)))))))
(-.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) #s(literal 1 binary64)))
(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)))))
(sin.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (+.f64 eps x) (/.f64 (PI.f64) #s(literal 2 binary64))))
(-.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)) (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 (neg.f64 (-.f64 (*.f64 x x) (*.f64 eps eps))) (neg.f64 (-.f64 x eps)))
(/.f64 (neg.f64 (-.f64 (*.f64 eps eps) (*.f64 x 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 x x (-.f64 (*.f64 eps eps) (*.f64 eps x)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (fma.f64 eps eps (-.f64 (*.f64 x x) (*.f64 eps x)))))
(/.f64 (-.f64 (*.f64 x x) (*.f64 eps eps)) (-.f64 x eps))
(/.f64 (-.f64 (*.f64 eps eps) (*.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 (+.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 (*.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 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 x x (-.f64 (*.f64 eps eps) (*.f64 eps x)))) (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 x x (-.f64 (*.f64 eps eps) (*.f64 eps x)))))
(+.f64 (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps eps (-.f64 (*.f64 x x) (*.f64 eps x)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps eps (-.f64 (*.f64 x x) (*.f64 eps x)))))
(+.f64 eps x)
(+.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)))
(*.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 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (pow.f64 #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(literal 2 binary64)))) (neg.f64 (+.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (pow.f64 #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (pow.f64 #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(literal 2 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))))))
(/.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (pow.f64 #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(literal 2 binary64))) (+.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #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 x x) #s(literal -1/2 binary64) #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 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(literal 2 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)))))))
(-.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))) (/.f64 (pow.f64 #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(literal 2 binary64)) (+.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))))
(-.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #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 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(literal 2 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))))) (/.f64 (pow.f64 #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #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 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))) #s(literal 2 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))))))
(-.f64 (cos.f64 (+.f64 eps x)) #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 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/2 binary64)))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 1 binary64))))))
(/.f64 (neg.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 3 binary64)))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/2 binary64)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/2 binary64))))
(/.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 (*.f64 x x) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 1 binary64)))))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/2 binary64))))))
(fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 x x) #s(literal 1 binary64))
(fma.f64 x (*.f64 x #s(literal -1/2 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 1 binary64))))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/2 binary64)))) (/.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/2 binary64)))))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 x x)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 1 binary64))))) (/.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 1 binary64))))))
(+.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/2 binary64)))))) (/.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 3 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/2 binary64)))))))
(+.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 x x) #s(literal -1/2 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))
(+.f64 (cosh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 x) #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 (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 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 #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 (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 (*.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 (+ x eps) eps)
#s(approx (+ x eps) (+.f64 eps x))
#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 (+ (* (* x x) -1/2) 1) #s(literal 1 binary64))
#s(approx (+ (* (* x x) -1/2) 1) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)))
#s(approx (* x x) (*.f64 x x))
#s(approx (- (cos (+ x eps)) (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 (cos (+ x eps)) (cos.f64 (+.f64 eps x)))
#s(approx (+ x eps) x)
#s(approx (+ x eps) (*.f64 (+.f64 (/.f64 eps x) #s(literal 1 binary64)) x))
#s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (+ (* (* x x) -1/2) 1) (*.f64 (*.f64 x x) #s(literal -1/2 binary64)))
#s(approx (+ (* (* x x) -1/2) 1) (*.f64 (-.f64 (pow.f64 x #s(literal -2 binary64)) #s(literal 1/2 binary64)) (*.f64 x x)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 (-.f64 eps (neg.f64 x))) (cos.f64 x)))
#s(approx (cos (+ x eps)) (cos.f64 (-.f64 eps (neg.f64 x))))
#s(approx (+ x eps) (*.f64 (neg.f64 x) (-.f64 (/.f64 (neg.f64 eps) 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 (*.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 (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 #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 (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 (cos.f64 x) eps) #s(literal -1/2 binary64)) (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 (neg eps) (neg.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 (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 #s(literal -1 binary64) eps) (/.f64 (sin.f64 x) eps) (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 #s(literal -1 binary64) eps) (/.f64 (sin.f64 x) eps) (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 (+ x eps) (*.f64 (+.f64 (/.f64 x eps) #s(literal 1 binary64)) 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 (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 (cos (+ x eps)) (cos.f64 (-.f64 x (neg.f64 eps))))
#s(approx (+ x eps) (*.f64 (neg.f64 eps) (-.f64 (/.f64 (neg.f64 x) eps) #s(literal 1 binary64))))

eval35.0ms (0.4%)

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

Compiled 9 432 to 1 395 computations (85.2% saved)

prune22.0ms (0.2%)

Memory
-24.5MiB live, 21.8MiB allocated; 4ms collecting garbage
Pruning

19 alts after pruning (18 fresh and 1 done)

PrunedKeptTotal
New32518343
Fresh101
Picked415
Done101
Total33119350
Accuracy
100.0%
Counts
350 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.7%
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
99.4%
#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) #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))) eps))
99.8%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
99.8%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
99.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) (sin.f64 x)) eps))
99.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #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))) eps) (sin.f64 x)) eps))
99.5%
#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))
79.9%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
79.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))))
79.6%
#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))))
79.5%
#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))))
78.9%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
99.1%
#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))
98.1%
#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))
96.8%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #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))) eps))
98.3%
#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)))))
82.2%
#s(approx (- (cos (+ x eps)) (cos 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))))))
79.6%
#s(approx (- (cos (+ x eps)) (cos 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)))
79.5%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/6 binary64) (neg.f64 eps)) x)))
Compiler

Compiled 1 187 to 794 computations (33.1% saved)

series28.0ms (0.3%)

Memory
18.2MiB live, 18.2MiB allocated; 0ms collecting garbage
Counts
49 → 170
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) 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 #s(approx (sin x) 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 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x))
(*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps)
(fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))
(*.f64 #s(approx (sin x) x) eps)
#s(approx (sin x) 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)
(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)
(*.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 (- (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 (+ (* (- (* (* 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 (- (* (+ (* 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 (- (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 (+ (* (- (* (* 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 (- (* (+ (* 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 (- (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 (- (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 (+ (* (- (* (* 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 (- (* (+ (* 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 (* (- (* (+ (* (* (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 (+ (* (- (* (* 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 (- (* (+ (* 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 (- (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 (+ (* (- (* (* 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 (- (* (+ (* 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
5.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) (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/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
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) (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/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
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) (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/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
@-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) (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/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
@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) (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/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)

rewrite163.0ms (1.7%)

Memory
-27.2MiB live, 64.1MiB allocated; 5ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06214377
06724280
133764280
080544132
Stop Event
iter limit
node limit
iter limit
Counts
219 → 379
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) 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 #s(approx (sin x) 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 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x))
(*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps)
(fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))
(*.f64 #s(approx (sin x) x) eps)
#s(approx (sin x) 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)
(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)
(*.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 (- (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 (+ (* (- (* (* 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 (- (* (+ (* 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 (- (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 (+ (* (- (* (* 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 (- (* (+ (* 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 (- (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 (- (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 (+ (* (- (* (* 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 (- (* (+ (* 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 (* (- (* (+ (* (* (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 (+ (* (- (* (* 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 (- (* (+ (* 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 (- (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 (+ (* (- (* (* 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 (- (* (+ (* 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 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))) eps) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))) eps) (sin.f64 x)) eps)
(*.f64 eps (-.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))) eps) (sin.f64 x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))) eps) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64)))) (neg.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))) eps (sin.f64 x))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))) eps) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))) eps) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))) eps) (sin.f64 x))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))) eps) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64))) (fma.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))) eps (sin.f64 x)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))) eps) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))) eps) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))) eps) (sin.f64 x)))))
(-.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))) eps) (sin.f64 x))
(*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))) eps)
(*.f64 eps (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps)) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 3 binary64)) #s(literal 1/216 binary64) (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps)) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps)) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 3 binary64)) #s(literal 1/216 binary64) (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps)) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))))))
(fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps)))
(fma.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))
(fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))
(fma.f64 #s(approx (sin x) x) (*.f64 #s(literal 1/6 binary64) eps) (*.f64 #s(literal -1/2 binary64) (cos.f64 x)))
(fma.f64 (cos.f64 x) #s(literal -1/2 binary64) (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps)))
(-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps)) (*.f64 #s(literal 1/2 binary64) (cos.f64 x)))
(+.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps)) (*.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 #s(approx (sin x) x) eps)))
(*.f64 #s(approx (sin x) x) eps)
(*.f64 eps #s(approx (sin x) x))
#s(approx (sin x) 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) (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 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) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 x) (sin.f64 (/.f64 (PI.f64) #s(literal 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 (neg.f64 (-.f64 (pow.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (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 (-.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 (neg.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)))) (neg.f64 (-.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 (neg.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)))) (neg.f64 (-.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 (neg.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)))) (neg.f64 (+.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))))))
(/.f64 (neg.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))))) (neg.f64 (+.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 (-.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 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 (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)))))
(/.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)))))
(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 eps #s(literal -1/2 binary64) (*.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))
(-.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 (-.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 1 binary64)) x) (*.f64 #s(literal -1/2 binary64) eps))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (*.f64 eps eps) #s(literal 1/6 binary64) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 eps eps) #s(literal 1/6 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (+.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 (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))
(+.f64 (cosh.f64 (*.f64 (log.f64 eps) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 eps) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 eps) #s(literal 2 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 (neg.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))) (neg.f64 (-.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 (neg.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)))) (neg.f64 (-.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 (neg.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))) (neg.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)) (-.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 (neg.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))))) (neg.f64 (+.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)))))))
(/.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 (neg.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))) (neg.f64 (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 (neg.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))) (neg.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)) (+.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 (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 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)) #s(literal 2 binary64)) #s(literal 1/14400 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/14400 binary64) (pow.f64 (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 x x) #s(literal -1/5040 binary64)))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/128024064000 binary64) (pow.f64 x #s(literal 6 binary64)) #s(literal 1/1728000 binary64))) (neg.f64 (+.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 (neg.f64 (+.f64 #s(literal 1/1728000 binary64) (*.f64 #s(literal -1/128024064000 binary64) (pow.f64 x #s(literal 6 binary64))))) (neg.f64 (+.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)))))))
(/.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))
(+.f64 (cosh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))))
(exp.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 (neg.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)))) (neg.f64 (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 (neg.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)))) (neg.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)) (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 (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 (neg.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))) (neg.f64 (fma.f64 (fma.f64 #s(literal 1/4 binary64) x (*.f64 #s(literal 1/6 binary64) eps)) x #s(literal 1/2 binary64))))
(/.f64 (neg.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))) (neg.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)) (+.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 (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 eps x) #s(literal 1/6 binary64) (*.f64 (*.f64 #s(literal 1/4 binary64) x) x))
(fma.f64 #s(literal 1/6 binary64) (*.f64 eps x) (*.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 eps x) #s(literal 1/6 binary64)) (*.f64 (*.f64 #s(literal 1/4 binary64) x) x))
(/.f64 (neg.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)))) (neg.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) x) (*.f64 #s(literal 1/6 binary64) eps))))
(/.f64 (neg.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)))) (neg.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) eps) (*.f64 #s(literal 1/4 binary64) x))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/64 binary64) (*.f64 #s(literal 1/216 binary64) (pow.f64 eps #s(literal 3 binary64))))) (neg.f64 (+.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))))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/216 binary64) (pow.f64 eps #s(literal 3 binary64)) (*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/64 binary64)))) (neg.f64 (+.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 (-.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 (-.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 (fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/64 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)))))
(/.f64 (fma.f64 #s(literal 1/216 binary64) (pow.f64 eps #s(literal 3 binary64)) (*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/64 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)))))
(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 eps #s(literal 1/6 binary64) (*.f64 #s(literal 1/4 binary64) x))
(fma.f64 x #s(literal 1/4 binary64) (*.f64 #s(literal 1/6 binary64) eps))
(-.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 (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 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 (*.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 (-.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 (*.f64 (*.f64 x x) eps) #s(literal 1/120 binary64) (*.f64 #s(literal -1/6 binary64) eps)) (*.f64 x x) eps) x))
#s(approx (* (sin x) eps) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/5040 binary64) (*.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 (*.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 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 #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 (+ (* (- (* (* 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 (*.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 (*.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 (*.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 (*.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 (- (* (+ (* 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 eps x) #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 eps x) #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 (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 (+ (* (- (* (* 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 (- (* (+ (* 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 (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 (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 (* (- (* (+ (* (* (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 #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 (+ (* (- (* (* 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 eps x) #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 (- (* (+ (* 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 x x) #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) #s(literal 1/6 binary64))))
#s(approx (* 1/6 eps) (*.f64 #s(literal 1/6 binary64) 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 (* (+ (* (* (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 (- (cos eps) 1) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
#s(approx (cos eps) (cos.f64 eps))
#s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (*.f64 (*.f64 (*.f64 eps eps) x) #s(literal 1/6 binary64)))
#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 (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) (*.f64 (*.f64 eps x) #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 (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 (+ (* (* (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 (+ (* (- (* (* 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 (- (* (+ (* 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))))

eval53.0ms (0.6%)

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

Compiled 18 313 to 2 650 computations (85.5% saved)

prune35.0ms (0.4%)

Memory
-22.9MiB live, 30.9MiB allocated; 7ms collecting garbage
Pruning

23 alts after pruning (19 fresh and 4 done)

PrunedKeptTotal
New44812460
Fresh6713
Picked235
Done011
Total45623479
Accuracy
100.0%
Counts
479 → 23
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.7%
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
99.4%
#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) #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))) eps))
99.8%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
99.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
99.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
99.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps))
99.8%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
99.5%
#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))
99.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps))
79.9%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
79.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))))
79.6%
#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))))
79.5%
#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))))
78.9%
#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))))
99.1%
#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))
52.8%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #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))) eps))
98.1%
#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 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) eps))
98.1%
#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 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
95.1%
#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))
49.5%
#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 eps eps) x) #s(literal 1/6 binary64)))) eps))
98.3%
#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)))))
79.6%
#s(approx (- (cos (+ x eps)) (cos 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)))
79.5%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/6 binary64) (neg.f64 eps)) x)))
Compiler

Compiled 1 605 to 1 045 computations (34.9% saved)

series32.0ms (0.3%)

Memory
19.0MiB live, 19.0MiB allocated; 0ms collecting garbage
Counts
40 → 155
Calls
Call 1
Inputs
#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 (*.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 (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))
(*.f64 x x)
#s(literal -1/6 binary64)
#s(literal 1 binary64)
#s(approx (- (cos (+ x eps)) (cos 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 #s(literal -1/120 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal 1/6 binary64) eps)) (*.f64 x x) (neg.f64 eps)) 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)
(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))
(fma.f64 #s(literal -1/120 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal 1/6 binary64) eps))
#s(literal -1/120 binary64)
(*.f64 (*.f64 x x) eps)
(*.f64 #s(literal 1/6 binary64) eps)
#s(literal 1/6 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps)
(-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x))
(*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps)
(fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)))
(*.f64 #s(approx (sin x) x) eps)
#s(approx (sin x) x)
#s(approx (* -1/2 (cos x)) #s(literal -1/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 (* (- (* (* (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 (* (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 (* x x) #s(hole binary64 (pow x 2)))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* -1 (* eps x))))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* x (+ (* -1 eps) (* 1/6 (* eps (pow x 2)))))))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* x (+ (* -1 eps) (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps)))))))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (* -1 eps)))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (- (* 1/6 (* eps (pow x 2))) eps)))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (- (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps))) eps)))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) #s(hole binary64 (* 1/6 eps)))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) #s(hole binary64 (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps))))
#s(approx (* (* x x) eps) #s(hole binary64 (* eps (pow x 2))))
#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 (* -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 eps)) (cos x)) #s(hole binary64 (- (cos (+ 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 (* (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/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* -1/120 (* eps (pow x 5)))))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* (pow x 5) (+ (* -1/120 eps) (* 1/6 (/ eps (pow x 2)))))))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* (pow x 5) (+ (* -1 (/ eps (pow x 4))) (+ (* -1/120 eps) (* 1/6 (/ eps (pow x 2))))))))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (* -1/120 (* eps (pow x 4)))))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (* (pow x 4) (+ (* -1/120 eps) (* 1/6 (/ eps (pow x 2)))))))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (* (pow x 4) (+ (* -1 (/ eps (pow x 4))) (+ (* -1/120 eps) (* 1/6 (/ eps (pow x 2))))))))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) #s(hole binary64 (* -1/120 (* eps (pow x 2)))))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) #s(hole binary64 (* (pow x 2) (+ (* -1/120 eps) (* 1/6 (/ eps (pow x 2)))))))
#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 (* -1/2 (cos x)) #s(hole binary64 (* -1/2 (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 (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* -1 (* (pow x 5) (+ (* -1/6 (/ eps (pow x 2))) (* 1/120 eps))))))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* -1 (* (pow x 5) (+ (* -1/6 (/ eps (pow x 2))) (+ (* 1/120 eps) (/ eps (pow x 4))))))))
#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) -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 (neg eps) #s(hole binary64 (* -1 eps)))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* eps (* x (- (* (pow x 2) (+ 1/6 (* -1/120 (pow x 2)))) 1)))))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (* eps (- (* (pow x 2) (+ 1/6 (* -1/120 (pow x 2)))) 1))))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) #s(hole binary64 (* eps (+ 1/6 (* -1/120 (pow x 2))))))
#s(approx (* 1/6 eps) #s(hole binary64 (* 1/6 eps)))
#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 (* (- (* (* (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 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 (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- x (* -1 eps))) (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 (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* -1 (* eps (* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))))))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (* -1 (* eps (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6)))))))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) #s(hole binary64 (* -1 (* eps (- (* 1/120 (pow x 2)) 1/6)))))
#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)))))))
Calls

6 calls:

TimeVariablePointExpression
8.0ms
eps
@inf
((- (cos (+ x eps)) (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)) (* (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) (* x x) -1/6 1 (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) -1/120 (* (* x x) eps) (* 1/6 eps) 1/6 (- (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) (* -1/2 (cos x)))
4.0ms
eps
@-inf
((- (cos (+ x eps)) (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)) (* (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) (* x x) -1/6 1 (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) -1/120 (* (* x x) eps) (* 1/6 eps) 1/6 (- (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) (* -1/2 (cos x)))
4.0ms
x
@inf
((- (cos (+ x eps)) (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)) (* (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) (* x x) -1/6 1 (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) -1/120 (* (* x x) eps) (* 1/6 eps) 1/6 (- (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) (* -1/2 (cos x)))
4.0ms
x
@-inf
((- (cos (+ x eps)) (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)) (* (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) (* x x) -1/6 1 (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) -1/120 (* (* x x) eps) (* 1/6 eps) 1/6 (- (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) (* -1/2 (cos x)))
4.0ms
eps
@0
((- (cos (+ x eps)) (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)) (* (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) (* x x) -1/6 1 (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) -1/120 (* (* x x) eps) (* 1/6 eps) 1/6 (- (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) (* -1/2 (cos x)))

rewrite169.0ms (1.8%)

Memory
-25.0MiB live, 66.2MiB allocated; 5ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05994185
06404073
134184073
084453855
Stop Event
iter limit
node limit
iter limit
Counts
195 → 315
Calls
Call 1
Inputs
#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 (*.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 (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))
(*.f64 x x)
#s(literal -1/6 binary64)
#s(literal 1 binary64)
#s(approx (- (cos (+ x eps)) (cos 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 #s(literal -1/120 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal 1/6 binary64) eps)) (*.f64 x x) (neg.f64 eps)) 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)
(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))
(fma.f64 #s(literal -1/120 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal 1/6 binary64) eps))
#s(literal -1/120 binary64)
(*.f64 (*.f64 x x) eps)
(*.f64 #s(literal 1/6 binary64) eps)
#s(literal 1/6 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps)
(-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x))
(*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps)
(fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)))
(*.f64 #s(approx (sin x) x) eps)
#s(approx (sin x) x)
#s(approx (* -1/2 (cos x)) #s(literal -1/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 (* (- (* (* (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 (* (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 (* x x) #s(hole binary64 (pow x 2)))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* -1 (* eps x))))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* x (+ (* -1 eps) (* 1/6 (* eps (pow x 2)))))))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* x (+ (* -1 eps) (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps)))))))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (* -1 eps)))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (- (* 1/6 (* eps (pow x 2))) eps)))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (- (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps))) eps)))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) #s(hole binary64 (* 1/6 eps)))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) #s(hole binary64 (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps))))
#s(approx (* (* x x) eps) #s(hole binary64 (* eps (pow x 2))))
#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 (* -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 eps)) (cos x)) #s(hole binary64 (- (cos (+ 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 (* (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/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* -1/120 (* eps (pow x 5)))))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* (pow x 5) (+ (* -1/120 eps) (* 1/6 (/ eps (pow x 2)))))))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* (pow x 5) (+ (* -1 (/ eps (pow x 4))) (+ (* -1/120 eps) (* 1/6 (/ eps (pow x 2))))))))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (* -1/120 (* eps (pow x 4)))))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (* (pow x 4) (+ (* -1/120 eps) (* 1/6 (/ eps (pow x 2)))))))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (* (pow x 4) (+ (* -1 (/ eps (pow x 4))) (+ (* -1/120 eps) (* 1/6 (/ eps (pow x 2))))))))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) #s(hole binary64 (* -1/120 (* eps (pow x 2)))))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) #s(hole binary64 (* (pow x 2) (+ (* -1/120 eps) (* 1/6 (/ eps (pow x 2)))))))
#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 (* -1/2 (cos x)) #s(hole binary64 (* -1/2 (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 (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* -1 (* (pow x 5) (+ (* -1/6 (/ eps (pow x 2))) (* 1/120 eps))))))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* -1 (* (pow x 5) (+ (* -1/6 (/ eps (pow x 2))) (+ (* 1/120 eps) (/ eps (pow x 4))))))))
#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) -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 (neg eps) #s(hole binary64 (* -1 eps)))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* eps (* x (- (* (pow x 2) (+ 1/6 (* -1/120 (pow x 2)))) 1)))))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (* eps (- (* (pow x 2) (+ 1/6 (* -1/120 (pow x 2)))) 1))))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) #s(hole binary64 (* eps (+ 1/6 (* -1/120 (pow x 2))))))
#s(approx (* 1/6 eps) #s(hole binary64 (* 1/6 eps)))
#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 (* (- (* (* (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 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 (+ x eps)) (cos x)) #s(hole binary64 (- (cos (- x (* -1 eps))) (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 (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) #s(hole binary64 (* -1 (* eps (* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))))))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) #s(hole binary64 (* -1 (* eps (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6)))))))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) #s(hole binary64 (* -1 (* eps (- (* 1/120 (pow x 2)) 1/6)))))
#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)))))))
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 (neg.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)))) (neg.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (sin.f64 x))))
(/.f64 (neg.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)))) (neg.f64 (+.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 (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 (pow.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64) (sin.f64 x))) (/.f64 (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)) (+.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 (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) (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 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) (cos.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 x) (sin.f64 (/.f64 (PI.f64) #s(literal 2 binary64)))))
x
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 (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) (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 (fma.f64 #s(literal -1/216 binary64) (pow.f64 x #s(literal 6 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 (neg.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/216 binary64) (pow.f64 x #s(literal 6 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 (-.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) (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 #s(literal -1/216 binary64) (pow.f64 x #s(literal 6 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)))))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/216 binary64) (pow.f64 x #s(literal 6 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))))))
(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 (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 (/.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 #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)))
(*.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))
(+.f64 (cosh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)))
#s(literal -1/6 binary64)
#s(literal 1 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)))
#s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x))
(*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)
(*.f64 x (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)))
(fma.f64 (neg.f64 eps) x (*.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) x))
(fma.f64 (*.f64 eps x) #s(literal -1 binary64) (*.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) x))
(fma.f64 #s(literal -1 binary64) (*.f64 eps x) (*.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) x))
(fma.f64 x (neg.f64 eps) (*.f64 x (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x)))
(+.f64 (*.f64 x (neg.f64 eps)) (*.f64 x (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x)))
(+.f64 (*.f64 (neg.f64 eps) x) (*.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) x))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) #s(literal 2 binary64)) (*.f64 eps eps))) (neg.f64 (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) (neg.f64 eps))))
(/.f64 (neg.f64 (-.f64 (*.f64 eps eps) (pow.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) #s(literal 2 binary64)))) (neg.f64 (-.f64 (neg.f64 eps) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 eps #s(literal 3 binary64)) #s(literal -1 binary64) (*.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64))))) (neg.f64 (fma.f64 eps eps (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) #s(literal 2 binary64)) (*.f64 (neg.f64 eps) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)) (pow.f64 (neg.f64 eps) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) #s(literal 2 binary64)) (-.f64 (*.f64 eps eps) (*.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) (neg.f64 eps))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) #s(literal 2 binary64)) (*.f64 eps eps)) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) (neg.f64 eps)))
(/.f64 (-.f64 (*.f64 eps eps) (pow.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) #s(literal 2 binary64))) (-.f64 (neg.f64 eps) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x)))
(/.f64 (fma.f64 (pow.f64 eps #s(literal 3 binary64)) #s(literal -1 binary64) (*.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)))) (fma.f64 eps eps (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) #s(literal 2 binary64)) (*.f64 (neg.f64 eps) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) #s(literal 3 binary64)) (pow.f64 x #s(literal 6 binary64)) (pow.f64 (neg.f64 eps) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) #s(literal 2 binary64)) (-.f64 (*.f64 eps eps) (*.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) (neg.f64 eps)))))
(fma.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x (neg.f64 eps))
(fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps))
(fma.f64 (*.f64 x x) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (neg.f64 eps))
(fma.f64 #s(literal -1 binary64) eps (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x))
(fma.f64 eps #s(literal -1 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x))
(-.f64 (/.f64 (*.f64 eps eps) (-.f64 (neg.f64 eps) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x))) (/.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) #s(literal 2 binary64)) (-.f64 (neg.f64 eps) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x))))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) (neg.f64 eps))) (/.f64 (*.f64 eps eps) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) (neg.f64 eps))))
(-.f64 (neg.f64 eps) (*.f64 (neg.f64 (*.f64 x x)) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps)))
(+.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) (neg.f64 eps))
(+.f64 (neg.f64 eps) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x))
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps)
(*.f64 eps (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 1/6 binary64) eps) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)) (*.f64 #s(literal 1/6 binary64) eps))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/1728000 binary64) (pow.f64 (*.f64 (*.f64 x x) eps) #s(literal 3 binary64)) (*.f64 #s(literal 1/216 binary64) (pow.f64 eps #s(literal 3 binary64))))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) eps) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)) (*.f64 #s(literal 1/6 binary64) eps))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 1/6 binary64) eps) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)) (*.f64 #s(literal 1/6 binary64) eps)))
(/.f64 (fma.f64 #s(literal -1/1728000 binary64) (pow.f64 (*.f64 (*.f64 x x) eps) #s(literal 3 binary64)) (*.f64 #s(literal 1/216 binary64) (pow.f64 eps #s(literal 3 binary64)))) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) eps) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)) (*.f64 #s(literal 1/6 binary64) eps)))))
(fma.f64 (*.f64 (*.f64 x x) #s(literal -1/120 binary64)) eps (*.f64 #s(literal 1/6 binary64) eps))
(fma.f64 (*.f64 #s(literal -1/120 binary64) eps) (*.f64 x x) (*.f64 #s(literal 1/6 binary64) eps))
(fma.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64) (*.f64 #s(literal 1/6 binary64) eps))
(fma.f64 #s(literal -1/120 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal 1/6 binary64) eps))
(fma.f64 #s(literal 1/6 binary64) eps (*.f64 eps (*.f64 (*.f64 x x) #s(literal -1/120 binary64))))
(fma.f64 #s(literal 1/6 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)))
(fma.f64 eps #s(literal 1/6 binary64) (*.f64 eps (*.f64 (*.f64 x x) #s(literal -1/120 binary64))))
(fma.f64 eps #s(literal 1/6 binary64) (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)) (*.f64 #s(literal 1/6 binary64) eps))) (/.f64 (pow.f64 (*.f64 #s(literal 1/6 binary64) eps) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)) (*.f64 #s(literal 1/6 binary64) eps))))
(-.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)) (*.f64 #s(literal -1/6 binary64) eps))
(+.f64 (*.f64 #s(literal 1/6 binary64) eps) (*.f64 eps (*.f64 (*.f64 x x) #s(literal -1/120 binary64))))
(+.f64 (*.f64 #s(literal 1/6 binary64) eps) (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)))
(+.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)) (*.f64 #s(literal 1/6 binary64) eps))
#s(literal -1/120 binary64)
(*.f64 (*.f64 x x) eps)
(*.f64 eps (*.f64 x x))
(*.f64 x (*.f64 eps x))
(*.f64 #s(literal 1/6 binary64) eps)
(*.f64 eps #s(literal 1/6 binary64))
#s(literal 1/6 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps))
(*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps)
(*.f64 eps (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64)))) (neg.f64 (fma.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps (sin.f64 x))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #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 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64))) (fma.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps (sin.f64 x)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #s(literal 2 binary64)) (fma.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps (sin.f64 x))) (/.f64 (pow.f64 (sin.f64 x) #s(literal 2 binary64)) (fma.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps (sin.f64 x))))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x))))) (/.f64 (pow.f64 (sin.f64 x) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #s(literal 2 binary64)) (fma.f64 (sin.f64 x) (sin.f64 x) (*.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x))))))
(-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x))
(*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps)
(*.f64 eps (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64)) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 3 binary64)) #s(literal 1/216 binary64) (pow.f64 #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64)) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (pow.f64 #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64)) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 3 binary64)) #s(literal 1/216 binary64) (pow.f64 #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64)) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))))))
(fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)))
(fma.f64 #s(approx (sin x) x) (*.f64 #s(literal 1/6 binary64) eps) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)))
(fma.f64 #s(literal 1/6 binary64) (*.f64 #s(approx (sin x) x) eps) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64)) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)))) (/.f64 (pow.f64 #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64)) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)))))
(+.f64 (*.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64)) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)))
(+.f64 #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64)) (*.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64)))
(*.f64 #s(approx (sin x) x) eps)
(*.f64 eps #s(approx (sin x) x))
#s(approx (sin x) x)
#s(approx (* -1/2 (cos x)) #s(literal -1/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 (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 (* (- (* (* (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 eps x) #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 eps x)) #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 (*.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 (* (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 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #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 (* x x) (*.f64 x x))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) (*.f64 (neg.f64 eps) x))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) (*.f64 (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/6 binary64) (neg.f64 eps)) x))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) (neg.f64 eps))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) (-.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/6 binary64)) eps))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) x) x) eps))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (*.f64 #s(literal 1/6 binary64) eps))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps))
#s(approx (* (* x x) eps) (*.f64 (*.f64 x x) eps))
#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 #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 (fma.f64 (*.f64 eps eps) #s(literal 1/6 binary64) (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 eps x)) #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) #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 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 #s(literal -1/36 binary64) (*.f64 eps x) #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 (*.f64 (*.f64 x x) eps) #s(literal 1/120 binary64) (*.f64 #s(literal -1/6 binary64) eps)) (*.f64 x x) eps) x))
#s(approx (* (sin x) eps) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/5040 binary64) (*.f64 #s(literal 1/120 binary64) eps)) (*.f64 x x) (*.f64 #s(literal -1/6 binary64) eps)) (*.f64 x x) eps) 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 eps)) (cos x)) (-.f64 (cos.f64 (+.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 (* (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/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) (*.f64 (*.f64 (pow.f64 x #s(literal 5 binary64)) eps) #s(literal -1/120 binary64)))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) (*.f64 (fma.f64 (/.f64 eps (*.f64 x x)) #s(literal 1/6 binary64) (*.f64 #s(literal -1/120 binary64) eps)) (pow.f64 x #s(literal 5 binary64))))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) (*.f64 (fma.f64 (/.f64 eps (pow.f64 x #s(literal 4 binary64))) #s(literal -1 binary64) (fma.f64 (/.f64 eps (*.f64 x x)) #s(literal 1/6 binary64) (*.f64 #s(literal -1/120 binary64) eps))) (pow.f64 x #s(literal 5 binary64))))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) (*.f64 (*.f64 (pow.f64 x #s(literal 4 binary64)) eps) #s(literal -1/120 binary64)))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) (*.f64 (fma.f64 (/.f64 eps (*.f64 x x)) #s(literal 1/6 binary64) (*.f64 #s(literal -1/120 binary64) eps)) (pow.f64 x #s(literal 4 binary64))))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) (*.f64 (fma.f64 (/.f64 eps (pow.f64 x #s(literal 4 binary64))) #s(literal -1 binary64) (fma.f64 (/.f64 eps (*.f64 x x)) #s(literal 1/6 binary64) (*.f64 #s(literal -1/120 binary64) eps))) (pow.f64 x #s(literal 4 binary64))))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (*.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/120 binary64)))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (*.f64 (fma.f64 (/.f64 eps (*.f64 x x)) #s(literal 1/6 binary64) (*.f64 #s(literal -1/120 binary64) eps)) (*.f64 x 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 (* -1/2 (cos x)) (*.f64 #s(literal -1/2 binary64) (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 (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) (neg.f64 (*.f64 (fma.f64 (/.f64 eps (*.f64 x x)) #s(literal -1/6 binary64) (*.f64 #s(literal 1/120 binary64) eps)) (pow.f64 x #s(literal 5 binary64)))))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) (neg.f64 (*.f64 (fma.f64 (/.f64 eps (*.f64 x x)) #s(literal -1/6 binary64) (fma.f64 #s(literal 1/120 binary64) eps (/.f64 eps (pow.f64 x #s(literal 4 binary64))))) (pow.f64 x #s(literal 5 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 (*.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 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 (neg eps) (neg.f64 eps))
#s(approx (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) (*.f64 (*.f64 eps x) (-.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) (*.f64 x x)) #s(literal 1 binary64))))
#s(approx (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) (*.f64 x x)) #s(literal 1 binary64)) eps))
#s(approx (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps))
#s(approx (* 1/6 eps) (*.f64 #s(literal 1/6 binary64) 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 #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 (* (+ (* (* (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 (* (- (* (* (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 (* (- (* (+ (* (* (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 (* (+ (* (* (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 (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 (-.f64 x (neg.f64 eps))) (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 (* (+ (* (+ (* -1/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) x) (*.f64 (neg.f64 eps) (*.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/120 (* (* x x) eps)) (* 1/6 eps)) (* x x)) (neg eps)) (*.f64 (neg.f64 eps) (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/120 (* (* x x) eps)) (* 1/6 eps)) (*.f64 (neg.f64 eps) (-.f64 (*.f64 (*.f64 x x) #s(literal 1/120 binary64)) #s(literal 1/6 binary64))))
#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 (+ (* (* (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)))))

eval48.0ms (0.5%)

Memory
-10.3MiB live, 35.0MiB allocated; 5ms collecting garbage
Compiler

Compiled 13 749 to 1 876 computations (86.4% saved)

prune31.0ms (0.3%)

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

27 alts after pruning (19 fresh and 8 done)

PrunedKeptTotal
New3888396
Fresh31114
Picked145
Done044
Total39227419
Accuracy
100.0%
Counts
419 → 27
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.7%
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 #s(approx (cos eps) #s(literal 1 binary64)) #s(literal 1 binary64)))
99.8%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
99.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
99.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
99.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps))
99.2%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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))
99.2%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #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))
99.8%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
99.4%
#s(approx (- (cos (+ x eps)) (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))
99.5%
#s(approx (- (cos (+ x eps)) (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))
99.5%
#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))
99.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps))
79.9%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
79.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))))
79.5%
#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.4%
#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))))
78.9%
#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))))
99.1%
#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))
52.8%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #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))) eps))
98.1%
#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 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) eps))
98.1%
#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 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
95.1%
#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))
49.5%
#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 eps eps) x) #s(literal 1/6 binary64)))) eps))
99.1%
#s(approx (- (cos (+ x eps)) (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))
98.3%
#s(approx (- (cos (+ x eps)) (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)))))
79.6%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)))
79.5%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/6 binary64) (neg.f64 eps)) x)))
Compiler

Compiled 2 467 to 994 computations (59.7% saved)

regimes35.0ms (0.4%)

Memory
-34.9MiB live, 19.0MiB allocated; 4ms collecting garbage
Counts
45 → 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)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (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 #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 eps eps) x) #s(literal 1/6 binary64)))) eps))
#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)) #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 (- (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 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) 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 (*.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)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)))
#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 (- (cos (+ x eps)) (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)) #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 (- (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 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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 (- (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 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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))) (-.f64 (*.f64 (*.f64 eps x) #s(literal 1/6 binary64)) #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 (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 (*.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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (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))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) (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 (- (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 #s(approx (sin x) 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 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) 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))) 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 #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))) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #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))) eps))
#s(approx (- (cos (+ x eps)) (cos 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))))))
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:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes28.0ms (0.3%)

Memory
17.9MiB live, 17.9MiB allocated; 0ms collecting garbage
Counts
41 → 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)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (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 #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 eps eps) x) #s(literal 1/6 binary64)))) eps))
#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)) #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 (- (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 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) 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 (*.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)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)))
#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 (- (cos (+ x eps)) (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)) #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 (- (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 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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 (- (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 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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))) (-.f64 (*.f64 (*.f64 eps x) #s(literal 1/6 binary64)) #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 (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 (*.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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (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))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) (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 (- (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 #s(approx (sin x) 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 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) 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))) eps))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps))
Calls

3 calls:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes27.0ms (0.3%)

Memory
17.0MiB live, 17.0MiB allocated; 0ms collecting garbage
Counts
39 → 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)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (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 #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 eps eps) x) #s(literal 1/6 binary64)))) eps))
#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)) #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 (- (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 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) 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 (*.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)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)))
#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 (- (cos (+ x eps)) (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)) #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 (- (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 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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 (- (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 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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))) (-.f64 (*.f64 (*.f64 eps x) #s(literal 1/6 binary64)) #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 (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 (*.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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (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))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) (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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/2 binary64)) (sin.f64 x)) eps))
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:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes27.0ms (0.3%)

Memory
-30.4MiB live, 16.7MiB allocated; 1ms collecting garbage
Counts
37 → 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)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (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 #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 eps eps) x) #s(literal 1/6 binary64)))) eps))
#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)) #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 (- (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 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) 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 (*.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)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)))
#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 (- (cos (+ x eps)) (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)) #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 (- (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 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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 (- (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 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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))) (-.f64 (*.f64 (*.f64 eps x) #s(literal 1/6 binary64)) #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 (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 (*.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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (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))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
Calls

3 calls:

10.0ms
x
9.0ms
eps
6.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
AccuracySegmentsBranch
99.5%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
99.5%1x
99.5%1eps
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes24.0ms (0.3%)

Memory
15.4MiB live, 15.4MiB allocated; 0ms 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)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (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 #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 eps eps) x) #s(literal 1/6 binary64)))) eps))
#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)) #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 (- (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 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) 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 (*.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)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)))
#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 (- (cos (+ x eps)) (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)) #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 (- (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 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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 (- (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 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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))) (-.f64 (*.f64 (*.f64 eps x) #s(literal 1/6 binary64)) #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 (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 (*.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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (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))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
Calls

3 calls:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes23.0ms (0.2%)

Memory
14.7MiB live, 14.7MiB allocated; 0ms 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)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (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 #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 eps eps) x) #s(literal 1/6 binary64)))) eps))
#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)) #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 (- (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 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) 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 (*.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)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)))
#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 (- (cos (+ x eps)) (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)) #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 (- (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 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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 (- (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 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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))) (-.f64 (*.f64 (*.f64 eps x) #s(literal 1/6 binary64)) #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 (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 (*.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))
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:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes22.0ms (0.2%)

Memory
-32.8MiB live, 14.5MiB allocated; 1ms 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)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (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 #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 eps eps) x) #s(literal 1/6 binary64)))) eps))
#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)) #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 (- (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 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) 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 (*.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)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)))
#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 (- (cos (+ x eps)) (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)) #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 (- (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 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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 (- (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 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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))) (-.f64 (*.f64 (*.f64 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64))) eps) (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))) (-.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:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes21.0ms (0.2%)

Memory
14.0MiB live, 14.0MiB allocated; 0ms collecting garbage
Counts
29 → 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)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (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 #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 eps eps) x) #s(literal 1/6 binary64)))) eps))
#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)) #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 (- (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 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) 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 (*.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)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)))
#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 (- (cos (+ x eps)) (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)) #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 (- (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 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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 (- (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 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 #s(approx (+ (* (* (sin x) eps) 1/6) (* -1/2 (cos x))) #s(approx (- (* (+ (* 1/4 x) (* 1/6 eps)) x) 1/2) #s(literal -1/2 binary64))) eps) (sin.f64 x)) eps))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) (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:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes18.0ms (0.2%)

Memory
11.6MiB live, 11.6MiB allocated; 0ms collecting garbage
Counts
25 → 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)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (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 #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 eps eps) x) #s(literal 1/6 binary64)))) eps))
#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)) #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 (- (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 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) 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 (*.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)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)))
#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 (- (cos (+ x eps)) (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)) #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 (- (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 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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 (- (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 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #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:

6.0ms
x
6.0ms
eps
5.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)

regimes16.0ms (0.2%)

Memory
10.0MiB live, 10.0MiB allocated; 0ms collecting garbage
Counts
21 → 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)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (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 #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 eps eps) x) #s(literal 1/6 binary64)))) eps))
#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)) #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 (- (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 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) 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 (*.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)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)))
#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 (- (cos (+ x eps)) (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)) #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 (- (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 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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 (- (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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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:

5.0ms
eps
5.0ms
x
4.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)

regimes15.0ms (0.2%)

Memory
-36.9MiB live, 10.6MiB allocated; 0ms collecting garbage
Counts
19 → 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)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (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 #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 eps eps) x) #s(literal 1/6 binary64)))) eps))
#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)) #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 (- (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 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) 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 (*.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)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)))
#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 (- (cos (+ x eps)) (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)) #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 (- (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))
Outputs
#s(approx (- (cos (+ x eps)) (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:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes11.0ms (0.1%)

Memory
8.0MiB live, 8.0MiB allocated; 0ms collecting garbage
Counts
13 → 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)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (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 #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 eps eps) x) #s(literal 1/6 binary64)))) eps))
#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)) #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 (- (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 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) 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 (*.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)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)))
#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
eps
4.0ms
x
3.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
AccuracySegmentsBranch
98.3%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
98.3%1x
98.3%1eps
Compiler

Compiled 9 to 10 computations (-11.1% saved)

regimes10.0ms (0.1%)

Memory
8.2MiB live, 8.2MiB allocated; 0ms collecting garbage
Counts
12 → 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)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
#s(approx (- (cos (+ x eps)) (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 #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 eps eps) x) #s(literal 1/6 binary64)))) eps))
#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)) #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 (- (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 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps (neg.f64 x)))) 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 (*.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)) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64)) eps) (*.f64 x x) (neg.f64 eps)) x)))
Outputs
#s(approx (- (cos (+ x eps)) (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:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes5.0ms (0.1%)

Memory
5.0MiB live, 5.0MiB allocated; 0ms collecting garbage
Counts
4 → 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)) #s(approx (+ (* (- (* (* eps eps) 1/6) 1) x) (* -1/2 eps)) (fma.f64 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
Outputs
#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 #s(literal -1/2 binary64) eps (neg.f64 x)))) eps))
Calls

3 calls:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes4.0ms (0%)

Memory
4.8MiB live, 4.8MiB allocated; 0ms collecting garbage
Counts
3 → 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))))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) #s(approx (sin x) x)))
Calls

3 calls:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes3.0ms (0%)

Memory
4.1MiB live, 4.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.7%1eps
49.7%1x
49.7%1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 9 to 10 computations (-11.1% saved)

simplify42.0ms (0.4%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0155539
1240539
2369539
3602539
41022539
52281539
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 (fma.f64 (*.f64 #s(approx (sin x) 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 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) 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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #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 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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 (- (cos (+ x eps)) (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 (- (cos (+ x eps)) (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 #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 #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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) 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 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) eps) (sin.f64 x)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 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)))) 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 (- (cos (+ x eps)) (cos x)) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos x)) #s(literal -1/2 binary64))) eps) #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 (fma.f64 (*.f64 #s(approx (sin x) x) eps) #s(literal 1/6 binary64) #s(approx (* -1/2 (cos 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 (- (cos (+ x eps)) (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 (- (cos (+ x eps)) (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 #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 #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)))

derivations482.0ms (5.1%)

Memory
-2.2MiB live, 47.4MiB allocated; 9ms collecting garbage
Stop Event
fuel
Compiler

Compiled 539 to 159 computations (70.5% saved)

preprocess78.0ms (0.8%)

Memory
-38.0MiB live, 54.0MiB allocated; 10ms collecting garbage
Compiler

Compiled 1 126 to 360 computations (68% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...