2sin (example 3.3)

Time bar (total: 7.1s)

start0.0ms (0%)

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

analyze31.0ms (0.4%)

Memory
-5.1MiB live, 38.0MiB allocated; 7ms 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)

sample4.1s (58.2%)

Memory
136.0MiB live, 4 098.6MiB allocated; 1.5s collecting garbage
Samples
1.8s25 823×0invalid
711.0ms5 616×1valid
170.0ms2 640×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.6s
ival-sin: 567.0ms (35% of total)
ival-fabs: 253.0ms (15.6% of total)
adjust: 176.0ms (10.9% of total)
ival-add!: 158.0ms (9.8% of total)
ival-mult!: 153.0ms (9.4% of total)
ival-<: 145.0ms (9% of total)
ival-sub!: 97.0ms (6% of total)
ival-and: 60.0ms (3.7% of total)
ival-assert: 12.0ms (0.7% of total)
Bogosity

preprocess49.0ms (0.7%)

Memory
-25.3MiB live, 29.3MiB allocated; 9ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02146
19942
250942
3330842
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
61.1%
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Compiler

Compiled 12 to 12 computations (0% saved)

series9.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
0141488
Stop Event
iter-limit
Counts
6 → 31
Calls
Call 1
Inputs
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
(sin.f64 (+.f64 x eps))
(+.f64 x eps)
x
eps
(sin.f64 x)
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
#s(approx (- (sin (+ x eps)) (sin x)) (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (cos.f64 eps) #s(literal 1 binary64)))))
#s(approx (- (sin (+ x eps)) (sin x)) (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (+.f64 (cos.f64 eps) (*.f64 #s(literal -1/2 binary64) (*.f64 x (sin.f64 eps)))) #s(literal 1 binary64)))))
#s(approx (- (sin (+ x eps)) (sin x)) (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (+.f64 (cos.f64 eps) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (sin.f64 eps) (*.f64 x (+.f64 #s(literal 1/6 binary64) (*.f64 #s(literal -1/6 binary64) (cos.f64 eps))))))) #s(literal 1 binary64)))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 eps) (*.f64 x (cos.f64 eps))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 eps) (*.f64 x (+.f64 (cos.f64 eps) (*.f64 #s(literal -1/2 binary64) (*.f64 x (sin.f64 eps)))))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 eps) (*.f64 x (+.f64 (cos.f64 eps) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (sin.f64 eps) (*.f64 #s(literal -1/6 binary64) (*.f64 x (cos.f64 eps)))))))))
#s(approx (+ x eps) eps)
#s(approx (+ x eps) (+.f64 eps x))
#s(approx x x)
#s(approx (sin x) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 x #s(literal 2 binary64))))))
#s(approx (sin x) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (sin x) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 x #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
#s(approx (sin (+ x eps)) (sin.f64 (+.f64 eps x)))
#s(approx (+ x eps) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 eps x))))
#s(approx (sin x) (sin.f64 x))
#s(approx (- (sin (+ x eps)) (sin x)) (-.f64 (sin.f64 (-.f64 eps (*.f64 #s(literal -1 binary64) x))) (sin.f64 x)))
#s(approx (sin (+ x eps)) (sin.f64 (-.f64 eps (*.f64 #s(literal -1 binary64) x))))
#s(approx (+ x eps) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 eps x)) #s(literal 1 binary64)))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))))))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 x) (*.f64 eps (cos.f64 x))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 x) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x)))))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 x) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))))))
#s(approx (+ x eps) (*.f64 eps (+.f64 #s(literal 1 binary64) (/.f64 x eps))))
#s(approx (- (sin (+ x eps)) (sin x)) (-.f64 (sin.f64 (-.f64 x (*.f64 #s(literal -1 binary64) eps))) (sin.f64 x)))
#s(approx (sin (+ x eps)) (sin.f64 (-.f64 x (*.f64 #s(literal -1 binary64) eps))))
#s(approx (+ x eps) (*.f64 #s(literal -1 binary64) (*.f64 eps (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x eps)) #s(literal 1 binary64)))))
Calls

6 calls:

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

rewrite490.0ms (6.9%)

Memory
35.5MiB live, 165.0MiB allocated; 61ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0618
01018
16418
253418
3571618
0897118
13133918
Stop Event
saturated
node-limit
iter-limit
Counts
6 → 97
Calls
Call 1
Inputs
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
(sin.f64 (+.f64 x eps))
(+.f64 x eps)
x
eps
(sin.f64 x)
Outputs
(*.f64 (*.f64 #s(literal 2 binary64) (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64)))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))))
(*.f64 (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))) #s(literal 2 binary64)) (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (*.f64 (-.f64 #s(literal 0 binary64) eps) #s(literal 1/2 binary64))) (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64)))))
(*.f64 (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))) #s(literal 2 binary64))
(*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))) #s(literal 2 binary64)))
(*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))) (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) #s(literal 2 binary64)))
(*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))) (+.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64)))))
(*.f64 #s(literal 2 binary64) (neg.f64 (*.f64 (sin.f64 (*.f64 (-.f64 #s(literal 0 binary64) eps) #s(literal 1/2 binary64))) (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 (PI.f64) x) (+.f64 eps x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 (PI.f64) x) (+.f64 eps x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) (+.f64 (PI.f64) x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps x) (+.f64 (PI.f64) x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))))
(/.f64 (+.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)) (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps)))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps)))))) #s(literal 2 binary64))
(/.f64 (fma.f64 (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps)))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps))))) #s(literal 2 binary64) (*.f64 (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps)))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps))))) #s(literal 2 binary64))) #s(literal 4 binary64))
(/.f64 (+.f64 (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps)))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps))))) (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps)))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps)))))) #s(literal 2 binary64))
(/.f64 (fma.f64 (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps)))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps))))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps)))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps))))))) #s(literal 4 binary64))
(/.f64 (*.f64 #s(literal 2 binary64) (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps)))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps)))))) #s(literal 2 binary64))
(/.f64 (*.f64 (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps)))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps))))) #s(literal 2 binary64)) #s(literal 2 binary64))
(neg.f64 (-.f64 (sin.f64 x) (sin.f64 (+.f64 eps x))))
(fma.f64 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 (+.f64 eps x))) #s(literal 1/2 binary64) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
(fma.f64 (+.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps)))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 (-.f64 eps #s(literal 0 binary64)) (fma.f64 #s(literal 2 binary64) x eps))))) #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))))
(fma.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))) (*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))))))
(fma.f64 (sin.f64 eps) (cos.f64 x) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x))))
(fma.f64 (sin.f64 eps) (cos.f64 x) (-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x))))
(fma.f64 (cos.f64 x) (sin.f64 eps) (-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (sin.f64 x)))
(fma.f64 (cos.f64 eps) (sin.f64 x) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
(fma.f64 (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))) #s(literal 1 binary64) (*.f64 (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))) #s(literal 1 binary64)))
(fma.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))) (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))))
(fma.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))) (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))))
(fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
(-.f64 (sin.f64 (*.f64 (*.f64 (+.f64 eps x) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (sin.f64 x))
(-.f64 (+.f64 (neg.f64 (sin.f64 x)) (*.f64 (cos.f64 eps) (sin.f64 x))) (*.f64 (neg.f64 (sin.f64 eps)) (cos.f64 x)))
(-.f64 (neg.f64 (sin.f64 x)) (sin.f64 (-.f64 (neg.f64 eps) x)))
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (-.f64 (sin.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (-.f64 (*.f64 (neg.f64 (sin.f64 eps)) (cos.f64 x)) (neg.f64 (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) (sin.f64 eps) (sin.f64 x)))
(-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (neg.f64 (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))) (*.f64 (neg.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64)))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))))
(-.f64 (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))) (*.f64 (neg.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))) (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64)))))
(-.f64 (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))) (neg.f64 (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))))))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(+.f64 (+.f64 (neg.f64 (sin.f64 x)) (*.f64 (cos.f64 eps) (sin.f64 x))) (*.f64 (sin.f64 eps) (cos.f64 x)))
(+.f64 (*.f64 (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))) #s(literal 1 binary64)) (*.f64 (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))))) (*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))))))
(+.f64 (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (neg.f64 (sin.f64 x)) (sin.f64 (+.f64 eps x)))
(+.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (sin.f64 x))))
(+.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))) (*.f64 (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))) (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64))))))
(+.f64 (sin.f64 (+.f64 eps x)) (neg.f64 (sin.f64 x)))
(/.f64 (fma.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) #s(literal 2 binary64) (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 (+.f64 eps x)))) #s(literal 2 binary64))
(neg.f64 (sin.f64 (-.f64 (neg.f64 eps) x)))
(sin.f64 (+.f64 eps x))
(fma.f64 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 (+.f64 eps x))) #s(literal 1/2 binary64) (*.f64 (neg.f64 (neg.f64 (cos.f64 x))) (sin.f64 eps)))
(fma.f64 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 (+.f64 eps x))) #s(literal 1/2 binary64) (*.f64 (neg.f64 (cos.f64 x)) (neg.f64 (sin.f64 eps))))
(fma.f64 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 (+.f64 eps x))) #s(literal 1/2 binary64) (neg.f64 (*.f64 (neg.f64 (sin.f64 eps)) (cos.f64 x))))
(fma.f64 (+.f64 (sin.f64 (-.f64 x eps)) (sin.f64 (+.f64 eps x))) #s(literal 1/2 binary64) (*.f64 (sin.f64 eps) (cos.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 eps) (sin.f64 x) (*.f64 (neg.f64 (neg.f64 (cos.f64 x))) (sin.f64 eps)))
(fma.f64 (cos.f64 eps) (sin.f64 x) (*.f64 (neg.f64 (cos.f64 x)) (neg.f64 (sin.f64 eps))))
(fma.f64 (cos.f64 eps) (sin.f64 x) (neg.f64 (*.f64 (neg.f64 (sin.f64 eps)) (cos.f64 x))))
(fma.f64 (cos.f64 eps) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (neg.f64 (cos.f64 x))) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (cos.f64 x)) (neg.f64 (sin.f64 eps))))
(fma.f64 (sin.f64 x) (cos.f64 eps) (neg.f64 (*.f64 (neg.f64 (sin.f64 eps)) (cos.f64 x))))
(fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (cos.f64 eps)) (sin.f64 x)))
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 x)) (cos.f64 eps)))
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (neg.f64 (*.f64 (cos.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 eps) (neg.f64 (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (neg.f64 (sin.f64 eps)) (cos.f64 x)))
(+.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (neg.f64 (neg.f64 (cos.f64 x))) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (neg.f64 (cos.f64 x)) (neg.f64 (sin.f64 eps))))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (neg.f64 (*.f64 (neg.f64 (sin.f64 eps)) (cos.f64 x))))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x)))
(*.f64 (+.f64 eps x) #s(literal 1 binary64))
(neg.f64 (-.f64 (neg.f64 x) eps))
(neg.f64 (-.f64 (neg.f64 eps) x))
(-.f64 eps (neg.f64 x))
(-.f64 x (neg.f64 eps))
(+.f64 eps (neg.f64 (neg.f64 x)))
(+.f64 eps x)
(+.f64 x eps)
x
eps
(neg.f64 (neg.f64 (sin.f64 x)))
(sin.f64 (neg.f64 (neg.f64 x)))
(sin.f64 (neg.f64 (+.f64 (PI.f64) x)))
(sin.f64 (+.f64 (+.f64 (PI.f64) x) (PI.f64)))
(sin.f64 (+.f64 (neg.f64 x) (PI.f64)))
(sin.f64 x)
(cos.f64 (+.f64 (+.f64 (PI.f64) x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x) (PI.f64)))

eval27.0ms (0.4%)

Memory
-46.2MiB live, 15.6MiB allocated; 7ms collecting garbage
Compiler

Compiled 1 209 to 407 computations (66.3% saved)

prune6.0ms (0.1%)

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

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New1168124
Fresh000
Picked011
Done000
Total1169125
Accuracy
100.0%
Counts
125 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
3.4%
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (+.f64 (neg.f64 x) (PI.f64))))
61.1%
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
60.3%
(-.f64 (sin.f64 #s(approx (+ x eps) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 eps x))))) (sin.f64 x))
99.9%
(*.f64 (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))) #s(literal 2 binary64)) (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))))
100.0%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))))))))
99.9%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))))))
99.7%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
98.5%
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
Compiler

Compiled 216 to 210 computations (2.8% saved)

series52.0ms (0.7%)

Memory
21.9MiB live, 66.8MiB allocated; 5ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06914333
Stop Event
iter-limit
Counts
36 → 168
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))))))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))))))))
eps
(+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))))))
(cos.f64 x)
x
(*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))))))
(fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))))
#s(literal -1/2 binary64)
(sin.f64 x)
(*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))))
(fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))
#s(literal -1/6 binary64)
(*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))
#s(literal 1/24 binary64)
(*.f64 eps (sin.f64 x))
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
(sin.f64 eps)
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (+.f64 (neg.f64 x) (PI.f64))))
(sin.f64 (+.f64 x eps))
(+.f64 x eps)
(sin.f64 (+.f64 (neg.f64 x) (PI.f64)))
(+.f64 (neg.f64 x) (PI.f64))
(neg.f64 x)
(PI.f64)
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x)))))
(+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))
(*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))))
(+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))))
(*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))
(fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))
(*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))
(*.f64 eps (cos.f64 x))
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
#s(approx (- (sin (+ x eps)) (sin x)) (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (cos.f64 eps) #s(literal 1 binary64)))))
#s(approx (- (sin (+ x eps)) (sin x)) (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (+.f64 (cos.f64 eps) (*.f64 #s(literal -1/2 binary64) (*.f64 x (sin.f64 eps)))) #s(literal 1 binary64)))))
#s(approx (- (sin (+ x eps)) (sin x)) (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (+.f64 (cos.f64 eps) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (sin.f64 eps) (*.f64 x (+.f64 #s(literal 1/6 binary64) (*.f64 #s(literal -1/6 binary64) (cos.f64 eps))))))) #s(literal 1 binary64)))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))))) (*.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))))) (fma.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))))) (fma.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))) (*.f64 x (fma.f64 eps (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))))) (fma.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))) (*.f64 x (fma.f64 x (fma.f64 eps (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1/144 binary64) (pow.f64 eps #s(literal 2 binary64))))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 eps (*.f64 x (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 eps (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 eps (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 x (-.f64 (fma.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 eps (*.f64 x (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1/144 binary64) (pow.f64 eps #s(literal 2 binary64))))))) #s(literal 1/2 binary64))))))))
#s(approx (cos x) #s(literal 1 binary64))
#s(approx (cos x) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 x #s(literal 2 binary64)))))
#s(approx (cos x) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
#s(approx (cos x) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 #s(literal 1/24 binary64) (*.f64 #s(literal -1/720 binary64) (pow.f64 x #s(literal 2 binary64))))) #s(literal 1/2 binary64)))))
#s(approx x x)
#s(approx (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))
#s(approx (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 eps (*.f64 x (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))))))
#s(approx (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x) (*.f64 eps (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 eps (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 x (fma.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 eps (*.f64 x (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1/144 binary64) (pow.f64 eps #s(literal 2 binary64))))))))))))
#s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (*.f64 #s(literal -1/6 binary64) eps))
#s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
#s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (fma.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 #s(literal 1/12 binary64) (*.f64 eps x))) #s(literal 1/2 binary64)))))
#s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (fma.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 x (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1/144 binary64) (pow.f64 eps #s(literal 2 binary64)))))))) #s(literal 1/2 binary64)))))
#s(approx (sin x) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 x #s(literal 2 binary64))))))
#s(approx (sin x) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (sin x) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 x #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x))))
#s(approx (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (fma.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 #s(literal 1/12 binary64) (*.f64 eps x))))))
#s(approx (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (fma.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/144 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x) (*.f64 #s(literal 1/12 binary64) eps)))))))
#s(approx (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))) #s(literal -1/6 binary64))
#s(approx (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))) (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 eps x)) #s(literal 1/6 binary64)))
#s(approx (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))) (-.f64 (*.f64 x (fma.f64 #s(literal 1/24 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/6 binary64)))
#s(approx (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))) (-.f64 (*.f64 x (fma.f64 #s(literal 1/24 binary64) eps (*.f64 x (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1/144 binary64) (*.f64 eps x)))))) #s(literal 1/6 binary64)))
#s(approx (* 1/24 (* eps (sin x))) (*.f64 #s(literal 1/24 binary64) (*.f64 eps x)))
#s(approx (* 1/24 (* eps (sin x))) (*.f64 x (fma.f64 #s(literal -1/144 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/24 binary64) eps))))
#s(approx (* 1/24 (* eps (sin x))) (*.f64 x (fma.f64 #s(literal 1/24 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/144 binary64) eps (*.f64 #s(literal 1/2880 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
#s(approx (* 1/24 (* eps (sin x))) (*.f64 x (fma.f64 #s(literal 1/24 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/144 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/120960 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/2880 binary64) eps))))))))
#s(approx (* eps (sin x)) (*.f64 eps x))
#s(approx (* eps (sin x)) (*.f64 x (+.f64 eps (*.f64 #s(literal -1/6 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (* eps (sin x)) (*.f64 x (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 #s(literal 1/120 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
#s(approx (* eps (sin x)) (*.f64 x (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/120 binary64) eps))))))))
#s(approx (- (sin (+ x eps)) (sin (+ (neg x) (PI)))) (-.f64 (sin.f64 eps) (sin.f64 (PI.f64))))
#s(approx (- (sin (+ x eps)) (sin (+ (neg x) (PI)))) (-.f64 (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (cos.f64 eps) (*.f64 #s(literal -1 binary64) (cos.f64 (PI.f64)))))) (sin.f64 (PI.f64))))
#s(approx (- (sin (+ x eps)) (sin (+ (neg x) (PI)))) (-.f64 (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (+.f64 (cos.f64 eps) (*.f64 x (-.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 eps)) (*.f64 #s(literal -1/2 binary64) (sin.f64 (PI.f64)))))) (*.f64 #s(literal -1 binary64) (cos.f64 (PI.f64)))))) (sin.f64 (PI.f64))))
#s(approx (- (sin (+ x eps)) (sin (+ (neg x) (PI)))) (-.f64 (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (+.f64 (cos.f64 eps) (*.f64 x (-.f64 (fma.f64 #s(literal -1/2 binary64) (sin.f64 eps) (*.f64 x (-.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 eps)) (*.f64 #s(literal 1/6 binary64) (cos.f64 (PI.f64)))))) (*.f64 #s(literal -1/2 binary64) (sin.f64 (PI.f64)))))) (*.f64 #s(literal -1 binary64) (cos.f64 (PI.f64)))))) (sin.f64 (PI.f64))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 eps) (*.f64 x (cos.f64 eps))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 eps) (*.f64 x (+.f64 (cos.f64 eps) (*.f64 #s(literal -1/2 binary64) (*.f64 x (sin.f64 eps)))))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 eps) (*.f64 x (+.f64 (cos.f64 eps) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (sin.f64 eps) (*.f64 #s(literal -1/6 binary64) (*.f64 x (cos.f64 eps)))))))))
#s(approx (+ x eps) eps)
#s(approx (+ x eps) (+.f64 eps x))
#s(approx (sin (+ (neg x) (PI))) (sin.f64 (PI.f64)))
#s(approx (sin (+ (neg x) (PI))) (+.f64 (sin.f64 (PI.f64)) (*.f64 #s(literal -1 binary64) (*.f64 x (cos.f64 (PI.f64))))))
#s(approx (sin (+ (neg x) (PI))) (+.f64 (sin.f64 (PI.f64)) (*.f64 x (fma.f64 #s(literal -1 binary64) (cos.f64 (PI.f64)) (*.f64 #s(literal -1/2 binary64) (*.f64 x (sin.f64 (PI.f64))))))))
#s(approx (sin (+ (neg x) (PI))) (+.f64 (sin.f64 (PI.f64)) (*.f64 x (fma.f64 #s(literal -1 binary64) (cos.f64 (PI.f64)) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (sin.f64 (PI.f64)) (*.f64 #s(literal 1/6 binary64) (*.f64 x (cos.f64 (PI.f64))))))))))
#s(approx (+ (neg x) (PI)) (PI.f64))
#s(approx (+ (neg x) (PI)) (+.f64 (PI.f64) (*.f64 #s(literal -1 binary64) x)))
#s(approx (neg x) (*.f64 #s(literal -1 binary64) x))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (+.f64 eps (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x))))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (+.f64 eps (*.f64 x (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/2 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (+.f64 eps (*.f64 x (fma.f64 #s(literal -1/2 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x))))))))
#s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))
#s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/2 binary64) x)))))
#s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (*.f64 eps x)) #s(literal 1/2 binary64)))))))
#s(approx (* -1/2 (* eps (sin x))) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x)))
#s(approx (* -1/2 (* eps (sin x))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (* -1/2 (* eps (sin x))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/240 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/12 binary64) eps))))))
#s(approx (* -1/2 (* eps (sin x))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal 1/12 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/240 binary64) eps (*.f64 #s(literal 1/10080 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x) (*.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (fma.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 eps (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (fma.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x) (*.f64 eps (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 x (-.f64 (fma.f64 #s(literal 1/12 binary64) (*.f64 eps x) (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64)))) #s(literal 1/2 binary64))))))))
#s(approx (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))
#s(approx (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x))))))
#s(approx (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 x (fma.f64 #s(literal 1/12 binary64) (*.f64 eps x) (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64)))))))))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps)))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (*.f64 eps x)) #s(literal 1/2 binary64)))))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))))
#s(approx (* -1/6 (* eps (cos x))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))
#s(approx (* -1/6 (* eps (cos x))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/144 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/12 binary64) eps)))))
#s(approx (* -1/6 (* eps (cos x))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal 1/12 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/144 binary64) eps (*.f64 #s(literal 1/4320 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))))))
#s(approx (* eps (cos x)) (+.f64 eps (*.f64 #s(literal -1/2 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))
#s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))))
#s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/720 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/24 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))))) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))))))))
#s(approx (cos x) (cos.f64 x))
#s(approx (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))))))
#s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))))))
#s(approx (sin x) (sin.f64 x))
#s(approx (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))))
#s(approx (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))) (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))))
#s(approx (* 1/24 (* eps (sin x))) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))
#s(approx (* eps (sin x)) (*.f64 eps (sin.f64 x)))
#s(approx (- (sin (+ x eps)) (sin (+ (neg x) (PI)))) (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 (-.f64 (PI.f64) x))))
#s(approx (sin (+ x eps)) (sin.f64 (+.f64 eps x)))
#s(approx (+ x eps) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 eps x))))
#s(approx (sin (+ (neg x) (PI))) (sin.f64 (-.f64 (PI.f64) x)))
#s(approx (+ (neg x) (PI)) (*.f64 x (-.f64 (/.f64 (PI.f64) x) #s(literal 1 binary64))))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))))
#s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x)))))
#s(approx (* -1/2 (* eps (sin x))) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))))
#s(approx (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))
#s(approx (* -1/6 (* eps (cos x))) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))
#s(approx (* eps (cos x)) (*.f64 eps (cos.f64 x)))
#s(approx (- (sin (+ x eps)) (sin x)) (-.f64 (sin.f64 (-.f64 eps (*.f64 #s(literal -1 binary64) x))) (sin.f64 x)))
#s(approx (- (sin (+ x eps)) (sin (+ (neg x) (PI)))) (-.f64 (sin.f64 (-.f64 eps (*.f64 #s(literal -1 binary64) x))) (sin.f64 (+.f64 (PI.f64) (*.f64 #s(literal -1 binary64) x)))))
#s(approx (sin (+ x eps)) (sin.f64 (-.f64 eps (*.f64 #s(literal -1 binary64) x))))
#s(approx (+ x eps) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 eps x)) #s(literal 1 binary64)))))
#s(approx (sin (+ (neg x) (PI))) (sin.f64 (+.f64 (PI.f64) (*.f64 #s(literal -1 binary64) x))))
#s(approx (+ (neg x) (PI)) (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (PI.f64) x))))))
#s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (*.f64 #s(literal -1/2 binary64) (sin.f64 x)))
#s(approx (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
#s(approx (sin eps) (*.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (sin eps) (*.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 eps #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 eps #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (- (sin (+ x eps)) (sin (+ (neg x) (PI)))) (-.f64 (sin.f64 x) (sin.f64 (-.f64 (PI.f64) x))))
#s(approx (- (sin (+ x eps)) (sin (+ (neg x) (PI)))) (-.f64 (+.f64 (sin.f64 x) (*.f64 eps (cos.f64 x))) (sin.f64 (-.f64 (PI.f64) x))))
#s(approx (- (sin (+ x eps)) (sin (+ (neg x) (PI)))) (-.f64 (+.f64 (sin.f64 x) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x)))))) (sin.f64 (-.f64 (PI.f64) x))))
#s(approx (- (sin (+ x eps)) (sin (+ (neg x) (PI)))) (-.f64 (+.f64 (sin.f64 x) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))))) (sin.f64 (-.f64 (PI.f64) x))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 x) (*.f64 eps (cos.f64 x))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 x) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x)))))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 x) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))))) (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (sin.f64 x))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))))) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))))) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) (pow.f64 eps #s(literal 2 binary64))) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))))) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) (pow.f64 eps #s(literal 2 binary64))) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (fma.f64 #s(literal 1/24 binary64) (sin.f64 x) (/.f64 (cos.f64 x) (pow.f64 eps #s(literal 3 binary64))))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (sin.f64 x))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) (pow.f64 eps #s(literal 2 binary64))) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) (pow.f64 eps #s(literal 2 binary64))) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (fma.f64 #s(literal 1/24 binary64) (sin.f64 x) (/.f64 (cos.f64 x) (pow.f64 eps #s(literal 3 binary64))))))))
#s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (sin.f64 x))))
#s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) (pow.f64 eps #s(literal 2 binary64))) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x))))))
#s(approx (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (+ x eps) (*.f64 eps (+.f64 #s(literal 1 binary64) (/.f64 x eps))))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (sin.f64 x))))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (/.f64 (cos.f64 x) eps))))
#s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (/.f64 (cos.f64 x) eps))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (cos.f64 x))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (/.f64 (cos.f64 x) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (cos.f64 x))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (/.f64 (cos.f64 x) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))))
#s(approx (- (sin (+ x eps)) (sin x)) (-.f64 (sin.f64 (-.f64 x (*.f64 #s(literal -1 binary64) eps))) (sin.f64 x)))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))))) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/2 binary64) (/.f64 (sin.f64 x) eps))) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x))))))))) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (/.f64 (cos.f64 x) eps)) eps) (*.f64 #s(literal 1/6 binary64) (cos.f64 x))) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/24 binary64) (sin.f64 x) (*.f64 #s(literal 1/6 binary64) (/.f64 (cos.f64 x) eps))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x))) eps) (*.f64 #s(literal -1/24 binary64) (sin.f64 x))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/2 binary64) (sin.f64 x))) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x))) eps) (*.f64 #s(literal -1/24 binary64) (sin.f64 x))))))
#s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/2 binary64) (/.f64 (sin.f64 x) eps))) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))) (*.f64 #s(literal -1 binary64) (*.f64 eps (fma.f64 #s(literal -1/24 binary64) (sin.f64 x) (*.f64 #s(literal 1/6 binary64) (/.f64 (cos.f64 x) eps))))))
#s(approx (- (sin (+ x eps)) (sin (+ (neg x) (PI)))) (-.f64 (sin.f64 (-.f64 x (*.f64 #s(literal -1 binary64) eps))) (sin.f64 (-.f64 (PI.f64) x))))
#s(approx (sin (+ x eps)) (sin.f64 (-.f64 x (*.f64 #s(literal -1 binary64) eps))))
#s(approx (+ x eps) (*.f64 #s(literal -1 binary64) (*.f64 eps (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x eps)) #s(literal 1 binary64)))))
#s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (*.f64 #s(literal -1 binary64) (*.f64 eps (fma.f64 #s(literal -1 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/2 binary64) (sin.f64 x))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal 1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/2 binary64) (/.f64 (sin.f64 x) eps))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (/.f64 (cos.f64 x) eps)) eps) (*.f64 #s(literal 1/6 binary64) (cos.f64 x))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/2 binary64) (sin.f64 x))) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (*.f64 #s(literal -1 binary64) (*.f64 eps (fma.f64 #s(literal 1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/2 binary64) (/.f64 (sin.f64 x) eps))))))
Calls

6 calls:

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

rewrite202.0ms (2.8%)

Memory
-6.0MiB live, 153.0MiB allocated; 24ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040325
069323
1360320
23383320
08350311
126043311
Stop Event
saturated
node-limit
iter-limit
Counts
36 → 376
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))))))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))))))))
eps
(+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))))))
(cos.f64 x)
x
(*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))))))
(fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))))
#s(literal -1/2 binary64)
(sin.f64 x)
(*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))))
(fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))
#s(literal -1/6 binary64)
(*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))
#s(literal 1/24 binary64)
(*.f64 eps (sin.f64 x))
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
(sin.f64 eps)
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (+.f64 (neg.f64 x) (PI.f64))))
(sin.f64 (+.f64 x eps))
(+.f64 x eps)
(sin.f64 (+.f64 (neg.f64 x) (PI.f64)))
(+.f64 (neg.f64 x) (PI.f64))
(neg.f64 x)
(PI.f64)
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x)))))
(+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))
(*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))))
(+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))))
(*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))
(fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))
(*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))
(*.f64 eps (cos.f64 x))
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps))
(*.f64 (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps)
(*.f64 eps (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 (cos.f64 x) eps))
(fma.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) eps (*.f64 (cos.f64 x) eps))
(fma.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps) (*.f64 (cos.f64 x) eps))
(fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps)))
(fma.f64 eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) (*.f64 (cos.f64 x) eps))
(fma.f64 eps (cos.f64 x) (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps)))
(-.f64 (*.f64 (cos.f64 x) eps) (*.f64 (neg.f64 eps) (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps)))
(-.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 (neg.f64 eps) (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))) eps))
(-.f64 (*.f64 (cos.f64 x) eps) (neg.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))))
(+.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps)) (*.f64 (cos.f64 x) eps))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps)))
eps
(neg.f64 (-.f64 (*.f64 (neg.f64 eps) (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))) (cos.f64 x)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) (sin.f64 x) (fma.f64 eps (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps) (cos.f64 x)))
(fma.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps (fma.f64 eps (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps) (cos.f64 x)))
(fma.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps (cos.f64 x))
(fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (fma.f64 eps (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps) (cos.f64 x)))
(fma.f64 (sin.f64 x) (*.f64 #s(literal -1/2 binary64) eps) (fma.f64 eps (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps) (cos.f64 x)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 x) eps) (fma.f64 eps (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps) (cos.f64 x)))
(fma.f64 eps (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (fma.f64 eps (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps) (cos.f64 x)))
(fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x))
(-.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) (neg.f64 (cos.f64 x)))
(-.f64 (cos.f64 x) (*.f64 (neg.f64 eps) (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))))
(+.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) (fma.f64 eps (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps) (cos.f64 x)))
(+.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 eps eps)))
(+.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (neg.f64 (neg.f64 eps)) (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))))
(+.f64 (cos.f64 x) (neg.f64 (*.f64 (neg.f64 eps) (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))))
(+.f64 (cos.f64 x) (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps))
(sin.f64 (+.f64 (neg.f64 (fabs.f64 x)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (fabs.f64 x)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (neg.f64 x)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x))
(fma.f64 (sin.f64 (fabs.f64 x)) #s(literal 0 binary64) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 x) (*.f64 #s(literal 0 binary64) (sin.f64 x)))
(fma.f64 (neg.f64 (sin.f64 x)) #s(literal 0 binary64) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(fma.f64 (sin.f64 x) #s(literal 0 binary64) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(-.f64 (*.f64 (sin.f64 x) #s(literal 0 binary64)) (*.f64 (cos.f64 x) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(cos.f64 (neg.f64 (neg.f64 (fabs.f64 x))))
(cos.f64 (neg.f64 (fabs.f64 (fabs.f64 x))))
(cos.f64 (fabs.f64 (neg.f64 (fabs.f64 x))))
(cos.f64 (fabs.f64 (fabs.f64 (fabs.f64 x))))
(cos.f64 (fabs.f64 (neg.f64 (neg.f64 x))))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 x))))
(cos.f64 (neg.f64 (fabs.f64 x)))
(cos.f64 (fabs.f64 (fabs.f64 x)))
(cos.f64 (neg.f64 (neg.f64 x)))
(cos.f64 (fabs.f64 x))
(cos.f64 (neg.f64 x))
(cos.f64 x)
(+.f64 (*.f64 (sin.f64 (fabs.f64 x)) #s(literal 0 binary64)) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(+.f64 (*.f64 (neg.f64 (sin.f64 x)) #s(literal 0 binary64)) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 x)) (*.f64 #s(literal 0 binary64) (sin.f64 x)))
(+.f64 (*.f64 (sin.f64 x) #s(literal 0 binary64)) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
x
(*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps)
(*.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) (sin.f64 x) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 eps eps)))
(fma.f64 (*.f64 eps eps) (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps))
(fma.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 eps eps)))
(fma.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps) eps (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps))
(fma.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 eps eps) (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps))
(fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 eps eps)))
(fma.f64 (sin.f64 x) (*.f64 #s(literal -1/2 binary64) eps) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 eps eps)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 x) eps) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 eps eps)))
(fma.f64 eps (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 eps eps)))
(fma.f64 eps (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps) (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps))
(-.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) (*.f64 (neg.f64 eps) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps)))
(-.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) (*.f64 (*.f64 (neg.f64 eps) (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)))) eps))
(-.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) (neg.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 eps eps))))
(+.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 eps eps)) (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps))
(+.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 eps eps)))
(neg.f64 (-.f64 (*.f64 (neg.f64 eps) (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) eps) (cos.f64 x) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) eps (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 x) eps) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (neg.f64 (neg.f64 eps)) (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)))))
(fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (neg.f64 (*.f64 (neg.f64 eps) (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))))))
(fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps))
(fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 (neg.f64 (neg.f64 eps)) (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)))))
(fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (neg.f64 (*.f64 (neg.f64 eps) (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))))))
(fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps))
(fma.f64 (cos.f64 x) (*.f64 #s(literal -1/6 binary64) eps) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 eps (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(-.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 (neg.f64 eps) (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)))))
(-.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps) (*.f64 (neg.f64 (sin.f64 x)) #s(literal -1/2 binary64)))
(-.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps) (*.f64 #s(literal 1/2 binary64) (sin.f64 x)))
(-.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps) (neg.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(+.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 (neg.f64 (neg.f64 eps)) (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)))))
(+.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (neg.f64 (*.f64 (neg.f64 eps) (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))))))
(+.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps))
(+.f64 (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) eps))
(+.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(+.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
#s(literal -1/2 binary64)
(sin.f64 x)
(*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) eps)
(*.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))))
(fma.f64 (*.f64 eps (*.f64 #s(literal 1/24 binary64) eps)) (sin.f64 x) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)))
(fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)))
(fma.f64 (*.f64 #s(literal 1/24 binary64) eps) (*.f64 (sin.f64 x) eps) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)))
(fma.f64 (*.f64 #s(literal -1/6 binary64) eps) (cos.f64 x) (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) eps))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) eps (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) eps))
(fma.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64) (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) eps))
(fma.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) eps (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)))
(fma.f64 (*.f64 (sin.f64 x) eps) (*.f64 #s(literal 1/24 binary64) eps) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)))
(fma.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 (sin.f64 x) eps) eps) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) eps))
(fma.f64 (cos.f64 x) (*.f64 #s(literal -1/6 binary64) eps) (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) eps))
(fma.f64 eps (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) eps))
(fma.f64 eps (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)))
(-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) (*.f64 (neg.f64 eps) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))))
(-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) (*.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps)) eps))
(-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) (neg.f64 (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) eps)))
(+.f64 (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) eps) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)))
(+.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) (*.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) eps))
(neg.f64 (-.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps)) (*.f64 #s(literal -1/6 binary64) (cos.f64 x))))
(fma.f64 (*.f64 #s(literal 1/24 binary64) (sin.f64 x)) eps (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 (*.f64 #s(literal 1/24 binary64) eps) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (neg.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps))))
(fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)))
(fma.f64 (sin.f64 x) (*.f64 #s(literal 1/24 binary64) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (neg.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps))))
(fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)))
(fma.f64 eps (*.f64 (sin.f64 x) #s(literal 1/24 binary64)) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
(-.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps)))
(-.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) (*.f64 #s(literal 1/6 binary64) (cos.f64 x)))
(-.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) (*.f64 (neg.f64 (cos.f64 x)) #s(literal -1/6 binary64)))
(-.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) (neg.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x))))
(+.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) (neg.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps))))
(+.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)))
(+.f64 (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
#s(literal -1/6 binary64)
(*.f64 (*.f64 #s(literal 1/24 binary64) (sin.f64 x)) eps)
(*.f64 (*.f64 #s(literal 1/24 binary64) eps) (sin.f64 x))
(*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))
(*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))
(*.f64 (sin.f64 x) (*.f64 #s(literal 1/24 binary64) eps))
(*.f64 eps (*.f64 (sin.f64 x) #s(literal 1/24 binary64)))
#s(literal 1/24 binary64)
(*.f64 (sin.f64 x) eps)
(*.f64 eps (sin.f64 x))
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
(sin.f64 eps)
(*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))) (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))))
(*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64)))) (cos.f64 (*.f64 (+.f64 (-.f64 (+.f64 eps x) x) (PI.f64)) #s(literal 1/2 binary64))))
(*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))) #s(literal 2 binary64))
(*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 (-.f64 (+.f64 eps x) x) (PI.f64)) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64)))) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 eps x) (neg.f64 (neg.f64 x))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 eps x) (neg.f64 (neg.f64 x))) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (neg.f64 (-.f64 (PI.f64) x)) (+.f64 eps x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (neg.f64 (-.f64 (PI.f64) x)) (+.f64 eps x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 x (PI.f64)) (+.f64 eps x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 x (PI.f64)) (+.f64 eps x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)) (+.f64 eps x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)) (+.f64 eps x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (neg.f64 x) (+.f64 eps x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (neg.f64 x) (+.f64 eps x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) (+.f64 x (PI.f64))) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps x) (+.f64 x (PI.f64))) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) (+.f64 (-.f64 (PI.f64) x) (PI.f64))) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps x) (+.f64 (-.f64 (PI.f64) x) (PI.f64))) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (*.f64 (+.f64 (-.f64 (+.f64 eps x) x) (PI.f64)) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64)))))
(neg.f64 (-.f64 (sin.f64 x) (sin.f64 (+.f64 eps x))))
(fma.f64 (cos.f64 eps) (sin.f64 x) (fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))))
(fma.f64 (cos.f64 eps) (sin.f64 x) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
(fma.f64 (cos.f64 eps) (sin.f64 x) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (neg.f64 (neg.f64 (sin.f64 x)))))
(fma.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))))
(fma.f64 (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))))
(fma.f64 (cos.f64 (*.f64 (+.f64 (-.f64 (+.f64 eps x) x) (PI.f64)) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (*.f64 (+.f64 (-.f64 (+.f64 eps x) x) (PI.f64)) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64)))))
(fma.f64 (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64))) (cos.f64 (*.f64 (+.f64 (-.f64 (+.f64 eps x) x) (PI.f64)) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (*.f64 (+.f64 (-.f64 (+.f64 eps x) x) (PI.f64)) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64)))))
(fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))))
(fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
(fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (neg.f64 (neg.f64 (sin.f64 x)))))
(-.f64 (-.f64 (sin.f64 (+.f64 eps x)) (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x)))) (*.f64 #s(literal 0 binary64) (cos.f64 x)))
(-.f64 (sin.f64 (+.f64 eps x)) (neg.f64 (neg.f64 (sin.f64 x))))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(+.f64 (neg.f64 (sin.f64 x)) (sin.f64 (+.f64 eps x)))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (neg.f64 (neg.f64 (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))))
(+.f64 (*.f64 (cos.f64 (*.f64 (+.f64 (-.f64 (+.f64 eps x) x) (PI.f64)) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 (*.f64 (+.f64 (-.f64 (+.f64 eps x) x) (PI.f64)) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64)))))
(+.f64 (sin.f64 (+.f64 eps x)) (neg.f64 (sin.f64 x)))
(neg.f64 (sin.f64 (-.f64 (neg.f64 eps) x)))
(sin.f64 (+.f64 eps x))
(fma.f64 (cos.f64 eps) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 (neg.f64 (neg.f64 eps)))))
(fma.f64 (cos.f64 eps) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 (neg.f64 (neg.f64 eps)))))
(fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (sin.f64 eps) (cos.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 eps) (neg.f64 (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (neg.f64 (cos.f64 x)) (sin.f64 eps)))
(-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (neg.f64 (*.f64 (sin.f64 eps) (cos.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (cos.f64 x) (neg.f64 (sin.f64 eps))))
(+.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (cos.f64 x) (sin.f64 (neg.f64 (neg.f64 eps)))))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x)))
(neg.f64 (-.f64 (neg.f64 eps) x))
(-.f64 eps (neg.f64 x))
(-.f64 x (neg.f64 eps))
(+.f64 eps x)
(+.f64 x (neg.f64 (neg.f64 eps)))
(+.f64 x eps)
(neg.f64 (sin.f64 (-.f64 (neg.f64 (PI.f64)) (neg.f64 x))))
(neg.f64 (sin.f64 (-.f64 (PI.f64) (neg.f64 x))))
(neg.f64 (neg.f64 (sin.f64 x)))
(sin.f64 (neg.f64 (neg.f64 (-.f64 (PI.f64) x))))
(sin.f64 (neg.f64 (+.f64 x (PI.f64))))
(sin.f64 (neg.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64))))
(sin.f64 (+.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x) (PI.f64)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x) (PI.f64)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (-.f64 (PI.f64) x)) (PI.f64)))
(sin.f64 (+.f64 (+.f64 x (PI.f64)) (PI.f64)))
(sin.f64 (+.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)) (PI.f64)))
(sin.f64 (neg.f64 (neg.f64 x)))
(sin.f64 (-.f64 (neg.f64 x) (PI.f64)))
(sin.f64 (-.f64 (PI.f64) x))
(fma.f64 #s(literal 0 binary64) (cos.f64 x) (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x))))
(fma.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x)) (*.f64 (cos.f64 x) (sin.f64 (neg.f64 (neg.f64 (PI.f64))))))
(fma.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x)) (*.f64 #s(literal 0 binary64) (cos.f64 x)))
(fma.f64 (neg.f64 (sin.f64 x)) #s(literal -1 binary64) (*.f64 (cos.f64 x) (sin.f64 (neg.f64 (neg.f64 (PI.f64))))))
(fma.f64 (neg.f64 (sin.f64 x)) #s(literal -1 binary64) (*.f64 #s(literal 0 binary64) (cos.f64 x)))
(fma.f64 (cos.f64 x) #s(literal 0 binary64) (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x))))
(-.f64 (*.f64 #s(literal 0 binary64) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 x)) #s(literal 1 binary64)))
(-.f64 (*.f64 #s(literal 0 binary64) (cos.f64 x)) (*.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 (sin.f64 x)))))
(-.f64 (*.f64 #s(literal 0 binary64) (cos.f64 x)) (*.f64 #s(literal -1 binary64) (sin.f64 x)))
(-.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x))) (*.f64 (neg.f64 (cos.f64 x)) #s(literal 0 binary64)))
(-.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x))) (neg.f64 (*.f64 #s(literal 0 binary64) (cos.f64 x))))
(-.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x))) (*.f64 #s(literal 0 binary64) (cos.f64 x)))
(cos.f64 (neg.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x) (PI.f64))))
(cos.f64 (neg.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x) (PI.f64))))
(cos.f64 (fabs.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x) (PI.f64))))
(cos.f64 (fabs.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(cos.f64 (fabs.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x) (PI.f64))))
(cos.f64 (neg.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(cos.f64 (+.f64 (neg.f64 (-.f64 (PI.f64) x)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (+.f64 x (PI.f64)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (+.f64 (-.f64 (PI.f64) x) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (PI.f64)))
(cos.f64 (+.f64 (PI.f64) (fma.f64 (PI.f64) #s(literal 1/2 binary64) x)))
(cos.f64 (-.f64 (PI.f64) (fma.f64 (PI.f64) #s(literal 1/2 binary64) x)))
(cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x) (neg.f64 (PI.f64))))
(cos.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x) (PI.f64)))
(cos.f64 (-.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x) (PI.f64)))
(+.f64 (*.f64 #s(literal 0 binary64) (cos.f64 x)) (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x))))
(+.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x))) (*.f64 (cos.f64 x) (sin.f64 (neg.f64 (neg.f64 (PI.f64))))))
(+.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x))) (*.f64 #s(literal 0 binary64) (cos.f64 x)))
(neg.f64 (-.f64 (neg.f64 (PI.f64)) (neg.f64 x)))
(-.f64 (PI.f64) (neg.f64 (neg.f64 x)))
(-.f64 (PI.f64) x)
(-.f64 (neg.f64 x) (neg.f64 (PI.f64)))
(+.f64 (PI.f64) (neg.f64 x))
(+.f64 (neg.f64 x) (neg.f64 (neg.f64 (PI.f64))))
(+.f64 (neg.f64 x) (PI.f64))
(neg.f64 x)
(PI.f64)
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)) eps))
(*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)) eps)
(*.f64 eps (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)))
(fma.f64 (*.f64 eps (*.f64 #s(literal -1/2 binary64) eps)) (sin.f64 x) (*.f64 (cos.f64 x) eps))
(fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal -1/2 binary64) (*.f64 (cos.f64 x) eps))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) (*.f64 (sin.f64 x) eps) (*.f64 (cos.f64 x) eps))
(fma.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) eps (*.f64 (cos.f64 x) eps))
(fma.f64 (*.f64 (sin.f64 x) eps) (*.f64 #s(literal -1/2 binary64) eps) (*.f64 (cos.f64 x) eps))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (sin.f64 x) eps) eps) (*.f64 (cos.f64 x) eps))
(fma.f64 (cos.f64 x) eps (*.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) eps))
(fma.f64 eps (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) (*.f64 (cos.f64 x) eps))
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) eps))
(-.f64 (*.f64 (cos.f64 x) eps) (*.f64 (neg.f64 eps) (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps)))
(-.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 x) eps)) eps))
(-.f64 (*.f64 (cos.f64 x) eps) (neg.f64 (*.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) eps)))
(+.f64 (*.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) eps) (*.f64 (cos.f64 x) eps))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) eps))
(neg.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 x) eps)) (cos.f64 x)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) (sin.f64 x) (cos.f64 x))
(fma.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps (cos.f64 x))
(fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x))
(fma.f64 (sin.f64 x) (*.f64 #s(literal -1/2 binary64) eps) (cos.f64 x))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 x) eps) (cos.f64 x))
(fma.f64 eps (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (cos.f64 x))
(-.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) (neg.f64 (cos.f64 x)))
(-.f64 (cos.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 x) eps)))
(+.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) (cos.f64 x))
(+.f64 (cos.f64 x) (neg.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (sin.f64 x) eps))))
(+.f64 (cos.f64 x) (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps))
(*.f64 (*.f64 #s(literal -1/2 binary64) eps) (sin.f64 x))
(*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps)
(*.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64))
(*.f64 (sin.f64 x) (*.f64 #s(literal -1/2 binary64) eps))
(*.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 x) eps))
(*.f64 eps (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) (cos.f64 x)) eps))
(*.f64 (fma.f64 eps (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) (cos.f64 x)) eps)
(*.f64 eps (fma.f64 eps (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) (cos.f64 x)))
(fma.f64 (*.f64 eps eps) (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) (*.f64 (cos.f64 x) eps))
(fma.f64 (*.f64 (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) eps) eps (*.f64 (cos.f64 x) eps))
(fma.f64 (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) (*.f64 eps eps) (*.f64 (cos.f64 x) eps))
(fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) (*.f64 eps eps)))
(fma.f64 eps (*.f64 (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) eps) (*.f64 (cos.f64 x) eps))
(fma.f64 eps (cos.f64 x) (*.f64 (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) (*.f64 eps eps)))
(-.f64 (*.f64 (cos.f64 x) eps) (*.f64 (neg.f64 eps) (*.f64 (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) eps)))
(-.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 (neg.f64 eps) (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)))) eps))
(-.f64 (*.f64 (cos.f64 x) eps) (neg.f64 (*.f64 (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) (*.f64 eps eps))))
(+.f64 (*.f64 (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) (*.f64 eps eps)) (*.f64 (cos.f64 x) eps))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) (*.f64 eps eps)))
(neg.f64 (-.f64 (*.f64 (neg.f64 eps) (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)))) (cos.f64 x)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) (sin.f64 x) (fma.f64 (*.f64 eps (*.f64 (cos.f64 x) eps)) #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps (fma.f64 (*.f64 eps (*.f64 (cos.f64 x) eps)) #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) eps (cos.f64 x))
(fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (fma.f64 (*.f64 eps (*.f64 (cos.f64 x) eps)) #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 (sin.f64 x) (*.f64 #s(literal -1/2 binary64) eps) (fma.f64 (*.f64 eps (*.f64 (cos.f64 x) eps)) #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 x) eps) (fma.f64 (*.f64 eps (*.f64 (cos.f64 x) eps)) #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 eps (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (fma.f64 (*.f64 eps (*.f64 (cos.f64 x) eps)) #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 eps (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) (cos.f64 x))
(-.f64 (*.f64 (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) eps) (neg.f64 (cos.f64 x)))
(-.f64 (cos.f64 x) (*.f64 (neg.f64 eps) (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)))))
(+.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) (fma.f64 (*.f64 eps (*.f64 (cos.f64 x) eps)) #s(literal -1/6 binary64) (cos.f64 x)))
(+.f64 (*.f64 (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) eps) (cos.f64 x))
(+.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)) (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) eps))
(+.f64 (cos.f64 x) (*.f64 (neg.f64 (neg.f64 eps)) (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)))))
(+.f64 (cos.f64 x) (neg.f64 (*.f64 (neg.f64 eps) (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))))))
(+.f64 (cos.f64 x) (*.f64 (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) eps))
(*.f64 (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) eps)
(*.f64 eps (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))))
(fma.f64 (*.f64 eps (*.f64 #s(literal -1/6 binary64) eps)) (cos.f64 x) (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps))
(fma.f64 (*.f64 eps (*.f64 (cos.f64 x) eps)) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps))
(fma.f64 (*.f64 #s(literal -1/6 binary64) eps) (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) (sin.f64 x) (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) eps))
(fma.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) eps))
(fma.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) eps (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps))
(fma.f64 (*.f64 (cos.f64 x) eps) (*.f64 #s(literal -1/6 binary64) eps) (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps))
(fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) eps))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (cos.f64 x) eps) eps) (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps))
(fma.f64 (sin.f64 x) (*.f64 #s(literal -1/2 binary64) eps) (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) eps))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 x) eps) (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) eps))
(fma.f64 eps (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) eps))
(fma.f64 eps (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps))
(-.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) (*.f64 (neg.f64 eps) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))))
(-.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/6 binary64)) eps))
(-.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) (neg.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) eps)))
(+.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) eps) (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps))
(+.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) eps) (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) eps))
(neg.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/6 binary64)) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) eps) (cos.f64 x) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) eps (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(fma.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 x) eps) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (neg.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/6 binary64))))
(fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)))
(fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (neg.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/6 binary64))))
(fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)))
(fma.f64 (cos.f64 x) (*.f64 #s(literal -1/6 binary64) eps) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(fma.f64 eps (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(-.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/6 binary64)))
(-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) (*.f64 (neg.f64 (sin.f64 x)) #s(literal -1/2 binary64)))
(-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) (*.f64 #s(literal 1/2 binary64) (sin.f64 x)))
(-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) (neg.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(+.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (neg.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/6 binary64))))
(+.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)))
(+.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(*.f64 (*.f64 #s(literal -1/6 binary64) eps) (cos.f64 x))
(*.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) eps)
(*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))
(*.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 x) eps))
(*.f64 (cos.f64 x) (*.f64 #s(literal -1/6 binary64) eps))
(*.f64 eps (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))

eval170.0ms (2.4%)

Memory
-2.0MiB live, 132.5MiB allocated; 19ms collecting garbage
Compiler

Compiled 7 820 to 3 080 computations (60.6% saved)

prune67.0ms (0.9%)

Memory
-23.0MiB live, 31.4MiB allocated; 9ms collecting garbage
Pruning

21 alts after pruning (20 fresh and 1 done)

PrunedKeptTotal
New59017607
Fresh033
Picked505
Done011
Total59521616
Accuracy
100.0%
Counts
616 → 21
Alt Table
Click to see full alt table
StatusAccuracyProgram
3.4%
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (PI.f64) x)))
3.4%
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (neg.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)))))
61.1%
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
60.3%
(-.f64 (sin.f64 #s(approx (+ x eps) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 eps x))))) (sin.f64 x))
99.9%
(*.f64 (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))) #s(literal 2 binary64)) (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))))
100.0%
#s(approx (- (sin (+ x eps)) (sin x)) (fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))))
99.7%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)) eps))
99.9%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) (cos.f64 x)) eps))
100.0%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps))
99.8%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps #s(approx (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))) #s(literal -1/6 binary64))))))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (*.f64 #s(literal -1/6 binary64) eps))))))
99.2%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))))))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps)))))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) #s(approx (* eps (sin x)) (*.f64 eps x))))))
99.2%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) #s(approx (* -1/2 (* eps (sin x))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
98.5%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
98.5%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))))
98.8%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/2 binary64) x)))))))
98.5%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))))
40.6%
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (/.f64 (cos.f64 x) (pow.f64 eps #s(literal 2 binary64))))))))
Compiler

Compiled 816 to 770 computations (5.6% saved)

series99.0ms (1.4%)

Memory
8.7MiB live, 97.5MiB allocated; 11ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08105026
Stop Event
iter-limit
Counts
46 → 207
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) (fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))))
(fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps)))
(cos.f64 x)
x
eps
(*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))
(fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)))
#s(literal -1/6 binary64)
(*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))
(*.f64 (sin.f64 x) eps)
(sin.f64 x)
#s(literal 1/24 binary64)
(*.f64 (sin.f64 x) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
(*.f64 eps eps)
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))))
(*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x)))))
#s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x)))
#s(literal 1 binary64)
(*.f64 #s(literal -1/2 binary64) (*.f64 eps x))
(*.f64 eps x)
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
(*.f64 eps (cos.f64 x))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))))))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64))))))))
(+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))))))
(*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64))))))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))))
(fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64))))
(*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))
(-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64))
(*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x)))
(fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))
#s(literal 1/12 binary64)
(*.f64 #s(literal 1/12 binary64) x)
#s(literal 1/2 binary64)
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (neg.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)))))
(sin.f64 (+.f64 x eps))
(+.f64 x eps)
(sin.f64 (neg.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64))))
(neg.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)))
(+.f64 (-.f64 (PI.f64) x) (PI.f64))
(-.f64 (PI.f64) x)
(PI.f64)
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
#s(approx (- (sin (+ x eps)) (sin x)) (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (cos.f64 eps) #s(literal 1 binary64)))))
#s(approx (- (sin (+ x eps)) (sin x)) (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (+.f64 (cos.f64 eps) (*.f64 #s(literal -1/2 binary64) (*.f64 x (sin.f64 eps)))) #s(literal 1 binary64)))))
#s(approx (- (sin (+ x eps)) (sin x)) (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (+.f64 (cos.f64 eps) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (sin.f64 eps) (*.f64 x (+.f64 #s(literal 1/6 binary64) (*.f64 #s(literal -1/6 binary64) (cos.f64 eps))))))) #s(literal 1 binary64)))))
#s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64)))))
#s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64)) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64)) (*.f64 x (fma.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 3 binary64)))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))))))))
#s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64)) (*.f64 x (fma.f64 x (fma.f64 #s(literal -1/2 binary64) eps (fma.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 3 binary64)) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1/144 binary64) (pow.f64 eps #s(literal 2 binary64)))))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))))))))
#s(approx (cos x) #s(literal 1 binary64))
#s(approx (cos x) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 x #s(literal 2 binary64)))))
#s(approx (cos x) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
#s(approx (cos x) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 #s(literal 1/24 binary64) (*.f64 #s(literal -1/720 binary64) (pow.f64 x #s(literal 2 binary64))))) #s(literal 1/2 binary64)))))
#s(approx x x)
#s(approx (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps)) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64))))
#s(approx (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps)) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64)) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))))))
#s(approx (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps)) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64)) (*.f64 x (fma.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) x) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps)) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64)) (*.f64 x (fma.f64 x (fma.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 3 binary64)) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1/144 binary64) (pow.f64 eps #s(literal 2 binary64))))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 #s(literal -1/6 binary64) eps))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (fma.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 #s(literal 1/12 binary64) (*.f64 eps x))) #s(literal 1/2 binary64)))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (fma.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 x (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1/144 binary64) (pow.f64 eps #s(literal 2 binary64)))))))) #s(literal 1/2 binary64)))))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) #s(literal -1/6 binary64))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 eps x)) #s(literal 1/6 binary64)))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) (-.f64 (*.f64 x (fma.f64 #s(literal 1/24 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/6 binary64)))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) (-.f64 (*.f64 x (fma.f64 #s(literal 1/24 binary64) eps (*.f64 x (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1/144 binary64) (*.f64 eps x)))))) #s(literal 1/6 binary64)))
#s(approx (* (* (sin x) eps) 1/24) (*.f64 #s(literal 1/24 binary64) (*.f64 eps x)))
#s(approx (* (* (sin x) eps) 1/24) (*.f64 x (fma.f64 #s(literal -1/144 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/24 binary64) eps))))
#s(approx (* (* (sin x) eps) 1/24) (*.f64 x (fma.f64 #s(literal 1/24 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/144 binary64) eps (*.f64 #s(literal 1/2880 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
#s(approx (* (* (sin x) eps) 1/24) (*.f64 x (fma.f64 #s(literal 1/24 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/144 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/120960 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/2880 binary64) eps))))))))
#s(approx (* (sin x) eps) (*.f64 eps x))
#s(approx (* (sin x) eps) (*.f64 x (+.f64 eps (*.f64 #s(literal -1/6 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (* (sin x) eps) (*.f64 x (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 #s(literal 1/120 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
#s(approx (* (sin x) eps) (*.f64 x (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/120 binary64) eps))))))))
#s(approx (sin x) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 x #s(literal 2 binary64))))))
#s(approx (sin x) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (sin x) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 x #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (* (sin x) -1/2) (*.f64 #s(literal -1/2 binary64) x))
#s(approx (* (sin x) -1/2) (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* (sin x) -1/2) (*.f64 x (-.f64 (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1/240 binary64) (pow.f64 x #s(literal 2 binary64))))) #s(literal 1/2 binary64))))
#s(approx (* (sin x) -1/2) (*.f64 x (-.f64 (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/10080 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/240 binary64))))) #s(literal 1/2 binary64))))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps)
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (+.f64 eps (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x))))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (+.f64 eps (*.f64 x (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/2 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (+.f64 eps (*.f64 x (fma.f64 #s(literal -1/2 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x))))))))
#s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))
#s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/2 binary64) x)))))
#s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (*.f64 eps x)) #s(literal 1/2 binary64)))))))
#s(approx (* -1/2 (* eps x)) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x)))
#s(approx (* eps (cos x)) (+.f64 eps (*.f64 #s(literal -1/2 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))
#s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))))
#s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/720 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/24 binary64) eps)))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x) (*.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (fma.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 eps (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (fma.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x) (*.f64 eps (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 x (-.f64 (fma.f64 #s(literal 1/12 binary64) (*.f64 eps x) (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64)))) #s(literal 1/2 binary64))))))))
#s(approx (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))
#s(approx (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))
#s(approx (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x))))))
#s(approx (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 x (fma.f64 #s(literal 1/12 binary64) (*.f64 eps x) (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64)))))))))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps)))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (*.f64 eps x)) #s(literal 1/2 binary64)))))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))))
#s(approx (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2)) (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (*.f64 eps x)) #s(literal 1/2 binary64))))
#s(approx (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2)) (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64))))
#s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) #s(literal -1/2 binary64))
#s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) (-.f64 (*.f64 #s(literal 1/12 binary64) (*.f64 eps x)) #s(literal 1/2 binary64)))
#s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))
#s(approx (* x (+ (* 1/12 eps) (* 1/12 x))) (*.f64 #s(literal 1/12 binary64) (*.f64 eps x)))
#s(approx (* x (+ (* 1/12 eps) (* 1/12 x))) (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))))
#s(approx (+ (* 1/12 eps) (* 1/12 x)) (*.f64 #s(literal 1/12 binary64) eps))
#s(approx (+ (* 1/12 eps) (* 1/12 x)) (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x)))
#s(approx (* 1/12 x) (*.f64 #s(literal 1/12 binary64) x))
#s(approx (- (sin (+ x eps)) (sin (neg (+ (- (PI) x) (PI))))) (-.f64 (sin.f64 eps) (sin.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64))))))
#s(approx (- (sin (+ x eps)) (sin (neg (+ (- (PI) x) (PI))))) (-.f64 (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (cos.f64 eps) (cos.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64))))))) (sin.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64))))))
#s(approx (- (sin (+ x eps)) (sin (neg (+ (- (PI) x) (PI))))) (-.f64 (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (+.f64 (cos.f64 eps) (*.f64 x (-.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 eps)) (*.f64 #s(literal -1/2 binary64) (sin.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64)))))))) (cos.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64))))))) (sin.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64))))))
#s(approx (- (sin (+ x eps)) (sin (neg (+ (- (PI) x) (PI))))) (-.f64 (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (+.f64 (cos.f64 eps) (*.f64 x (-.f64 (fma.f64 #s(literal -1/2 binary64) (sin.f64 eps) (*.f64 x (-.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 eps)) (*.f64 #s(literal -1/6 binary64) (cos.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64)))))))) (*.f64 #s(literal -1/2 binary64) (sin.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64)))))))) (cos.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64))))))) (sin.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64))))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 eps) (*.f64 x (cos.f64 eps))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 eps) (*.f64 x (+.f64 (cos.f64 eps) (*.f64 #s(literal -1/2 binary64) (*.f64 x (sin.f64 eps)))))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 eps) (*.f64 x (+.f64 (cos.f64 eps) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (sin.f64 eps) (*.f64 #s(literal -1/6 binary64) (*.f64 x (cos.f64 eps)))))))))
#s(approx (+ x eps) (+.f64 eps x))
#s(approx (sin (neg (+ (- (PI) x) (PI)))) (sin.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64)))))
#s(approx (sin (neg (+ (- (PI) x) (PI)))) (+.f64 (sin.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64)))) (*.f64 x (cos.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64)))))))
#s(approx (sin (neg (+ (- (PI) x) (PI)))) (+.f64 (sin.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64)))) (*.f64 x (+.f64 (cos.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64)))) (*.f64 #s(literal -1/2 binary64) (*.f64 x (sin.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64))))))))))
#s(approx (sin (neg (+ (- (PI) x) (PI)))) (+.f64 (sin.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64)))) (*.f64 x (+.f64 (cos.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64)))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (sin.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64)))) (*.f64 #s(literal -1/6 binary64) (*.f64 x (cos.f64 (neg.f64 (*.f64 #s(literal 2 binary64) (PI.f64))))))))))))
#s(approx (neg (+ (- (PI) x) (PI))) (*.f64 #s(literal -2 binary64) (PI.f64)))
#s(approx (neg (+ (- (PI) x) (PI))) (-.f64 x (*.f64 #s(literal 2 binary64) (PI.f64))))
#s(approx (+ (- (PI) x) (PI)) (*.f64 #s(literal 2 binary64) (PI.f64)))
#s(approx (+ (- (PI) x) (PI)) (fma.f64 #s(literal -1 binary64) x (*.f64 #s(literal 2 binary64) (PI.f64))))
#s(approx (- (PI) x) (PI.f64))
#s(approx (- (PI) x) (+.f64 (PI.f64) (*.f64 #s(literal -1 binary64) x)))
#s(approx (- (sin (+ x eps)) (sin x)) (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
#s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (fma.f64 eps (cos.f64 x) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))))))))
#s(approx (cos x) (cos.f64 x))
#s(approx (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps)) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))))))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))))
#s(approx (* (* (sin x) eps) 1/24) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))
#s(approx (* (sin x) eps) (*.f64 eps (sin.f64 x)))
#s(approx (sin x) (sin.f64 x))
#s(approx (* (sin x) -1/2) (*.f64 #s(literal -1/2 binary64) (sin.f64 x)))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))))
#s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x)))))
#s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (/.f64 #s(literal 1 binary64) x))))
#s(approx (* eps (cos x)) (*.f64 eps (cos.f64 x)))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))))
#s(approx (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))
#s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 3 binary64))))
#s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 (pow.f64 x #s(literal 3 binary64)) (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal 1/12 binary64) (/.f64 eps x)))))
#s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 (pow.f64 x #s(literal 3 binary64)) (-.f64 (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal 1/12 binary64) (/.f64 eps x))) (/.f64 #s(literal 1/2 binary64) (pow.f64 x #s(literal 2 binary64))))))
#s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 (pow.f64 x #s(literal 3 binary64)) (-.f64 (+.f64 #s(literal 1/12 binary64) (fma.f64 #s(literal -1/6 binary64) (/.f64 eps (pow.f64 x #s(literal 3 binary64))) (*.f64 #s(literal 1/12 binary64) (/.f64 eps x)))) (/.f64 #s(literal 1/2 binary64) (pow.f64 x #s(literal 2 binary64))))))
#s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))))
#s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal 1/12 binary64) (/.f64 eps x)))))
#s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal 1/12 binary64) (/.f64 eps x))) (/.f64 #s(literal 1/2 binary64) (pow.f64 x #s(literal 2 binary64))))))
#s(approx (+ (* 1/12 eps) (* 1/12 x)) (*.f64 x (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal 1/12 binary64) (/.f64 eps x)))))
#s(approx (- (sin (+ x eps)) (sin (neg (+ (- (PI) x) (PI))))) (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 (-.f64 x (*.f64 #s(literal 2 binary64) (PI.f64))))))
#s(approx (sin (+ x eps)) (sin.f64 (+.f64 eps x)))
#s(approx (+ x eps) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 eps x))))
#s(approx (sin (neg (+ (- (PI) x) (PI)))) (sin.f64 (-.f64 x (*.f64 #s(literal 2 binary64) (PI.f64)))))
#s(approx (neg (+ (- (PI) x) (PI))) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -2 binary64) (/.f64 (PI.f64) x)))))
#s(approx (+ (- (PI) x) (PI)) (*.f64 #s(literal -1 binary64) x))
#s(approx (+ (- (PI) x) (PI)) (*.f64 x (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 (PI.f64) x)) #s(literal 1 binary64))))
#s(approx (- (PI) x) (*.f64 x (-.f64 (/.f64 (PI.f64) x) #s(literal 1 binary64))))
#s(approx (- (sin (+ x eps)) (sin x)) (-.f64 (sin.f64 (-.f64 eps (*.f64 #s(literal -1 binary64) x))) (sin.f64 x)))
#s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (/.f64 #s(literal 1 binary64) x)))))
#s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal -1/12 binary64) (/.f64 eps x)) #s(literal 1/12 binary64)))))
#s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 1/12 binary64) eps) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) x))) x)) #s(literal 1/12 binary64)))))
#s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 x #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/6 binary64) (/.f64 eps x))) x) (*.f64 #s(literal 1/12 binary64) eps)) x)) #s(literal 1/12 binary64)))))
#s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/12 binary64) eps (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) x))) x)))))
#s(approx (+ (* 1/12 eps) (* 1/12 x)) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1/12 binary64) (/.f64 eps x)) #s(literal 1/12 binary64)))))
#s(approx (- (sin (+ x eps)) (sin (neg (+ (- (PI) x) (PI))))) (-.f64 (sin.f64 (-.f64 eps (*.f64 #s(literal -1 binary64) x))) (sin.f64 (neg.f64 (fma.f64 #s(literal -1 binary64) x (*.f64 #s(literal 2 binary64) (PI.f64)))))))
#s(approx (sin (+ x eps)) (sin.f64 (-.f64 eps (*.f64 #s(literal -1 binary64) x))))
#s(approx (+ x eps) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 eps x)) #s(literal 1 binary64)))))
#s(approx (sin (neg (+ (- (PI) x) (PI)))) (sin.f64 (neg.f64 (fma.f64 #s(literal -1 binary64) x (*.f64 #s(literal 2 binary64) (PI.f64))))))
#s(approx (neg (+ (- (PI) x) (PI))) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal 2 binary64) (/.f64 (PI.f64) x)) #s(literal 1 binary64)))))
#s(approx (+ (- (PI) x) (PI)) (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -2 binary64) (/.f64 (PI.f64) x))))))
#s(approx (- (PI) x) (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (PI.f64) x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))))))))
#s(approx (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps)) (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (sin.f64 x))))
#s(approx (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps)) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
#s(approx (* eps eps) (pow.f64 eps #s(literal 2 binary64)))
#s(approx (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))
#s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (fma.f64 eps (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/6 binary64)) (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
#s(approx (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2)) (fma.f64 #s(literal 1/12 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
#s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64)))
#s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) (-.f64 (fma.f64 #s(literal 1/12 binary64) (*.f64 eps x) (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
#s(approx (* x (+ (* 1/12 eps) (* 1/12 x))) (fma.f64 #s(literal 1/12 binary64) (*.f64 eps x) (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64)))))
#s(approx (- (sin (+ x eps)) (sin (neg (+ (- (PI) x) (PI))))) (-.f64 (sin.f64 x) (sin.f64 (-.f64 x (*.f64 #s(literal 2 binary64) (PI.f64))))))
#s(approx (- (sin (+ x eps)) (sin (neg (+ (- (PI) x) (PI))))) (-.f64 (+.f64 (sin.f64 x) (*.f64 eps (cos.f64 x))) (sin.f64 (-.f64 x (*.f64 #s(literal 2 binary64) (PI.f64))))))
#s(approx (- (sin (+ x eps)) (sin (neg (+ (- (PI) x) (PI))))) (-.f64 (+.f64 (sin.f64 x) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x)))))) (sin.f64 (-.f64 x (*.f64 #s(literal 2 binary64) (PI.f64))))))
#s(approx (- (sin (+ x eps)) (sin (neg (+ (- (PI) x) (PI))))) (-.f64 (+.f64 (sin.f64 x) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))))) (sin.f64 (-.f64 x (*.f64 #s(literal 2 binary64) (PI.f64))))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 x) (*.f64 eps (cos.f64 x))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 x) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x)))))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 x) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))))))
#s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (sin.f64 x))))
#s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) (pow.f64 eps #s(literal 2 binary64))) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x))))))
#s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) (pow.f64 eps #s(literal 2 binary64))) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (fma.f64 #s(literal 1/24 binary64) (sin.f64 x) (/.f64 (cos.f64 x) (pow.f64 eps #s(literal 3 binary64))))))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (sin.f64 x))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) (pow.f64 eps #s(literal 2 binary64))) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x))))))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (/.f64 (cos.f64 x) eps))))
#s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (/.f64 (cos.f64 x) eps))))
#s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) eps))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (cos.f64 x))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (/.f64 (cos.f64 x) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (cos.f64 x))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (/.f64 (cos.f64 x) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))))
#s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 eps (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/6 binary64))))
#s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 eps (-.f64 (fma.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64)) (/.f64 (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64))) eps)) #s(literal 1/6 binary64))))
#s(approx (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2)) (*.f64 #s(literal 1/12 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))
#s(approx (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2)) (*.f64 eps (fma.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64)) (/.f64 (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64))) eps))))
#s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) (*.f64 eps (-.f64 (fma.f64 #s(literal 1/12 binary64) x (*.f64 #s(literal 1/12 binary64) (/.f64 (pow.f64 x #s(literal 2 binary64)) eps))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) eps)))))
#s(approx (* x (+ (* 1/12 eps) (* 1/12 x))) (*.f64 eps (fma.f64 #s(literal 1/12 binary64) x (*.f64 #s(literal 1/12 binary64) (/.f64 (pow.f64 x #s(literal 2 binary64)) eps)))))
#s(approx (+ (* 1/12 eps) (* 1/12 x)) (*.f64 eps (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal 1/12 binary64) (/.f64 x eps)))))
#s(approx (+ x eps) (*.f64 eps (+.f64 #s(literal 1 binary64) (/.f64 x eps))))
#s(approx (- (sin (+ x eps)) (sin x)) (-.f64 (sin.f64 (-.f64 x (*.f64 #s(literal -1 binary64) eps))) (sin.f64 x)))
#s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/2 binary64) (/.f64 (sin.f64 x) eps))) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (/.f64 (cos.f64 x) eps)) eps) (*.f64 #s(literal 1/6 binary64) (cos.f64 x))) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/2 binary64) (/.f64 (sin.f64 x) eps))) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) (*.f64 #s(literal -1 binary64) (*.f64 eps (fma.f64 #s(literal -1/24 binary64) (sin.f64 x) (*.f64 #s(literal 1/6 binary64) (/.f64 (cos.f64 x) eps))))))
#s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (*.f64 #s(literal -1 binary64) (*.f64 eps (fma.f64 #s(literal -1 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/2 binary64) (sin.f64 x))))))
#s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 #s(literal -1 binary64) (*.f64 eps (-.f64 (*.f64 #s(literal 1/2 binary64) x) (/.f64 #s(literal 1 binary64) eps)))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal 1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/2 binary64) (/.f64 (sin.f64 x) eps))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (/.f64 (cos.f64 x) eps)) eps) (*.f64 #s(literal 1/6 binary64) (cos.f64 x))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/2 binary64) (sin.f64 x))) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (*.f64 #s(literal -1 binary64) (*.f64 eps (fma.f64 #s(literal 1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/2 binary64) (/.f64 (sin.f64 x) eps))))))
#s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 #s(literal -1 binary64) (*.f64 eps (+.f64 #s(literal 1/6 binary64) (*.f64 #s(literal -1/12 binary64) (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 #s(literal -1 binary64) (*.f64 eps (+.f64 #s(literal 1/6 binary64) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64))) eps) (*.f64 #s(literal -1/12 binary64) (pow.f64 x #s(literal 2 binary64))))))))
#s(approx (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2)) (*.f64 #s(literal -1 binary64) (*.f64 eps (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64))) eps) (*.f64 #s(literal -1/12 binary64) (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) (*.f64 #s(literal -1 binary64) (*.f64 eps (fma.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64)) eps) (*.f64 #s(literal -1/12 binary64) x)))))
#s(approx (* x (+ (* 1/12 eps) (* 1/12 x))) (*.f64 #s(literal -1 binary64) (*.f64 eps (fma.f64 #s(literal -1/12 binary64) x (*.f64 #s(literal -1/12 binary64) (/.f64 (pow.f64 x #s(literal 2 binary64)) eps))))))
#s(approx (+ (* 1/12 eps) (* 1/12 x)) (*.f64 #s(literal -1 binary64) (*.f64 eps (-.f64 (*.f64 #s(literal -1/12 binary64) (/.f64 x eps)) #s(literal 1/12 binary64)))))
#s(approx (- (sin (+ x eps)) (sin (neg (+ (- (PI) x) (PI))))) (-.f64 (sin.f64 (-.f64 x (*.f64 #s(literal -1 binary64) eps))) (sin.f64 (-.f64 x (*.f64 #s(literal 2 binary64) (PI.f64))))))
#s(approx (sin (+ x eps)) (sin.f64 (-.f64 x (*.f64 #s(literal -1 binary64) eps))))
#s(approx (+ x eps) (*.f64 #s(literal -1 binary64) (*.f64 eps (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x eps)) #s(literal 1 binary64)))))
Calls

6 calls:

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

rewrite210.0ms (3%)

Memory
14.9MiB live, 202.3MiB allocated; 26ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
058484
098474
1501468
24375463
08231438
125953438
Stop Event
saturated
node-limit
iter-limit
Counts
46 → 402
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) (fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))))
(fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps)))
(cos.f64 x)
x
eps
(*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))
(fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)))
#s(literal -1/6 binary64)
(*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))
(*.f64 (sin.f64 x) eps)
(sin.f64 x)
#s(literal 1/24 binary64)
(*.f64 (sin.f64 x) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
(*.f64 eps eps)
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))))
(*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x)))))
#s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x)))
#s(literal 1 binary64)
(*.f64 #s(literal -1/2 binary64) (*.f64 eps x))
(*.f64 eps x)
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
(*.f64 eps (cos.f64 x))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))))))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64))))))))
(+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))))))
(*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64))))))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))))
(fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64))))
(*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))
(-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64))
(*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x)))
(fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))
#s(literal 1/12 binary64)
(*.f64 #s(literal 1/12 binary64) x)
#s(literal 1/2 binary64)
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (neg.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)))))
(sin.f64 (+.f64 x eps))
(+.f64 x eps)
(sin.f64 (neg.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64))))
(neg.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)))
(+.f64 (-.f64 (PI.f64) x) (PI.f64))
(-.f64 (PI.f64) x)
(PI.f64)
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps)))
(*.f64 eps (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)))
(neg.f64 (-.f64 (*.f64 (-.f64 (*.f64 (sin.f64 x) #s(literal 1/2 binary64)) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps)) (*.f64 eps eps)) (*.f64 (cos.f64 x) eps)))
(fma.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (fabs.f64 eps)) (fabs.f64 eps) (*.f64 (cos.f64 x) eps))
(fma.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (neg.f64 eps)) (neg.f64 eps) (*.f64 (cos.f64 x) eps))
(fma.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) eps (*.f64 (cos.f64 x) eps))
(fma.f64 (fabs.f64 eps) (*.f64 (fabs.f64 eps) (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))) (*.f64 (cos.f64 x) eps))
(fma.f64 (neg.f64 eps) (*.f64 (neg.f64 eps) (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))) (*.f64 (cos.f64 x) eps))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 (cos.f64 x) eps))
(fma.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps) (*.f64 (cos.f64 x) eps))
(fma.f64 (cos.f64 x) eps (neg.f64 (*.f64 (-.f64 (*.f64 (sin.f64 x) #s(literal 1/2 binary64)) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps)) (*.f64 eps eps))))
(fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps)))
(fma.f64 eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) (*.f64 (cos.f64 x) eps))
(fma.f64 eps (cos.f64 x) (neg.f64 (*.f64 (-.f64 (*.f64 (sin.f64 x) #s(literal 1/2 binary64)) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps)) (*.f64 eps eps))))
(fma.f64 eps (cos.f64 x) (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps)))
(-.f64 (*.f64 (cos.f64 x) eps) (*.f64 (-.f64 (*.f64 (sin.f64 x) #s(literal 1/2 binary64)) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps)) (*.f64 eps eps)))
(-.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps)) (*.f64 (neg.f64 (cos.f64 x)) eps))
(-.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps)) (neg.f64 (*.f64 (cos.f64 x) eps)))
(+.f64 (*.f64 (cos.f64 x) eps) (neg.f64 (*.f64 (-.f64 (*.f64 (sin.f64 x) #s(literal 1/2 binary64)) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps)) (*.f64 eps eps))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps)))
(+.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps)) (*.f64 (cos.f64 x) eps))
(sin.f64 (+.f64 (neg.f64 (neg.f64 x)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (fabs.f64 x)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (fabs.f64 x)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x))
(fma.f64 (sin.f64 (fabs.f64 x)) #s(literal 0 binary64) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(fma.f64 (neg.f64 (sin.f64 x)) #s(literal 0 binary64) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 x) (*.f64 #s(literal 0 binary64) (sin.f64 x)))
(fma.f64 (sin.f64 x) #s(literal 0 binary64) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(-.f64 (*.f64 (sin.f64 x) #s(literal 0 binary64)) (*.f64 (cos.f64 x) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 x))))
(cos.f64 (neg.f64 (neg.f64 (fabs.f64 x))))
(cos.f64 (neg.f64 (fabs.f64 (fabs.f64 x))))
(cos.f64 (fabs.f64 (neg.f64 (neg.f64 x))))
(cos.f64 (fabs.f64 (neg.f64 (fabs.f64 x))))
(cos.f64 (fabs.f64 (fabs.f64 (fabs.f64 x))))
(cos.f64 (neg.f64 (neg.f64 x)))
(cos.f64 (neg.f64 (fabs.f64 x)))
(cos.f64 (fabs.f64 (fabs.f64 x)))
(cos.f64 (neg.f64 x))
(cos.f64 (fabs.f64 x))
(cos.f64 x)
(+.f64 (*.f64 (sin.f64 (fabs.f64 x)) #s(literal 0 binary64)) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 x)) (*.f64 #s(literal 0 binary64) (sin.f64 x)))
(+.f64 (*.f64 (neg.f64 (sin.f64 x)) #s(literal 0 binary64)) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(+.f64 (*.f64 (sin.f64 x) #s(literal 0 binary64)) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
x
eps
(*.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (fabs.f64 eps)) (fabs.f64 eps))
(*.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (neg.f64 eps)) (neg.f64 eps))
(*.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) eps)
(*.f64 (fabs.f64 eps) (*.f64 (fabs.f64 eps) (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))))
(*.f64 (neg.f64 eps) (*.f64 (neg.f64 eps) (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))))
(*.f64 (*.f64 eps eps) (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))
(*.f64 eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps))
(fma.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps) (*.f64 eps eps) (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 eps eps)))
(fma.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 eps eps) (*.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps) (*.f64 eps eps)))
(fma.f64 (*.f64 eps eps) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 (*.f64 eps eps) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps)))
(+.f64 (*.f64 (*.f64 eps eps) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps)) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(+.f64 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 (*.f64 eps eps) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps)))
(+.f64 (*.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps) (*.f64 eps eps)) (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 eps eps)))
(+.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 eps eps)) (*.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps) (*.f64 eps eps)))
(neg.f64 (-.f64 (*.f64 (sin.f64 x) #s(literal 1/2 binary64)) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps)))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) eps (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) eps (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) eps) (cos.f64 x) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) eps) (cos.f64 x) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps))
(fma.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps (*.f64 (neg.f64 (neg.f64 (sin.f64 x))) #s(literal -1/2 binary64)))
(fma.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 x) eps) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 x) eps) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(fma.f64 (cos.f64 x) (*.f64 #s(literal -1/6 binary64) eps) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (cos.f64 x) (*.f64 #s(literal -1/6 binary64) eps) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(fma.f64 eps (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 eps (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (neg.f64 (neg.f64 (sin.f64 x))) #s(literal -1/2 binary64)))
(fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(-.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64)))
(-.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 (neg.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)))) eps))
(-.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 (neg.f64 eps) (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)))))
(-.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (neg.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps)))
(+.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps) (*.f64 (neg.f64 (neg.f64 (sin.f64 x))) #s(literal -1/2 binary64)))
(+.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(+.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) eps (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps))
(+.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) eps) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(+.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) eps) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps))
(neg.f64 (-.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps)) (*.f64 #s(literal -1/6 binary64) (cos.f64 x))))
(fma.f64 (*.f64 #s(literal 1/24 binary64) (sin.f64 x)) eps (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 (*.f64 #s(literal 1/24 binary64) eps) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 (sin.f64 x) (*.f64 #s(literal 1/24 binary64) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
(fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 (neg.f64 (*.f64 (neg.f64 eps) (sin.f64 x))) #s(literal 1/24 binary64)))
(fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (neg.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps))))
(fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)))
(fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (neg.f64 (*.f64 (neg.f64 eps) (sin.f64 x))) #s(literal 1/24 binary64)))
(fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (neg.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps))))
(fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)))
(fma.f64 eps (*.f64 (sin.f64 x) #s(literal 1/24 binary64)) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
(-.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps)))
(-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) (*.f64 #s(literal 1/6 binary64) (cos.f64 x)))
(-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) (*.f64 (neg.f64 (cos.f64 x)) #s(literal -1/6 binary64)))
(-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) (neg.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x))))
(+.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) (*.f64 (neg.f64 (*.f64 (neg.f64 eps) (sin.f64 x))) #s(literal 1/24 binary64)))
(+.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) (neg.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps))))
(+.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 x)) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)))
(+.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
#s(literal -1/6 binary64)
(*.f64 (*.f64 #s(literal 1/24 binary64) (sin.f64 x)) eps)
(*.f64 (*.f64 #s(literal 1/24 binary64) eps) (sin.f64 x))
(*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))
(*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))
(*.f64 (sin.f64 x) (*.f64 #s(literal 1/24 binary64) eps))
(*.f64 eps (*.f64 (sin.f64 x) #s(literal 1/24 binary64)))
(*.f64 (sin.f64 x) eps)
(*.f64 eps (sin.f64 x))
(sin.f64 x)
#s(literal 1/24 binary64)
(*.f64 #s(literal -1/2 binary64) (sin.f64 x))
(*.f64 (sin.f64 x) #s(literal -1/2 binary64))
(neg.f64 (*.f64 (sin.f64 x) #s(literal 1/2 binary64)))
#s(literal -1/2 binary64)
(*.f64 (fabs.f64 (fabs.f64 eps)) (fabs.f64 (fabs.f64 eps)))
(*.f64 (neg.f64 (fabs.f64 eps)) (neg.f64 (fabs.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 (fabs.f64 eps) #s(literal 2 binary64))
(pow.f64 (neg.f64 eps) #s(literal 2 binary64))
(pow.f64 eps #s(literal 2 binary64))
(neg.f64 (*.f64 eps (neg.f64 eps)))
(neg.f64 (*.f64 (neg.f64 eps) eps))
(fabs.f64 (*.f64 eps eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))) eps))
(*.f64 #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))) eps)
(*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))))
#s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(neg.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 eps x)) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) eps)) x #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal 1 binary64) (*.f64 eps x)) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) x) eps #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) x #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) #s(literal 1 binary64))
(fma.f64 eps (*.f64 x #s(literal -1/2 binary64)) #s(literal 1 binary64))
(fma.f64 x (*.f64 #s(literal -1/2 binary64) eps) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 eps x)))
(+.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)))
#s(literal 1 binary64)
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) eps)) x)
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 eps x)) #s(literal -1/2 binary64))
(*.f64 (*.f64 #s(literal -1/2 binary64) x) eps)
(*.f64 (*.f64 #s(literal -1/2 binary64) eps) x)
(*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(*.f64 (*.f64 eps x) #s(literal -1/2 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)))
(*.f64 #s(literal -1/2 binary64) (*.f64 eps x))
(*.f64 eps (*.f64 x #s(literal -1/2 binary64)))
(*.f64 x (*.f64 #s(literal -1/2 binary64) eps))
(neg.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 eps x)))
(*.f64 eps x)
(*.f64 x eps)
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (cos.f64 x) eps))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps (cos.f64 x)) eps))
(*.f64 (fma.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps (cos.f64 x)) eps)
(*.f64 eps (fma.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps (cos.f64 x)))
(fma.f64 (*.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps) eps (*.f64 (cos.f64 x) eps))
(fma.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) (*.f64 eps eps) (*.f64 (cos.f64 x) eps))
(fma.f64 (*.f64 eps eps) #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) (*.f64 (cos.f64 x) eps))
(fma.f64 (cos.f64 x) eps (*.f64 (*.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps) eps))
(fma.f64 eps (*.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps) (*.f64 (cos.f64 x) eps))
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps) eps))
(-.f64 (*.f64 (cos.f64 x) eps) (*.f64 (neg.f64 eps) (*.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps)))
(-.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 (neg.f64 eps) #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps)))) eps))
(-.f64 (*.f64 (cos.f64 x) eps) (neg.f64 (*.f64 (*.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps) eps)))
(+.f64 (*.f64 (*.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps) eps) (*.f64 (cos.f64 x) eps))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps) eps))
(neg.f64 (-.f64 (*.f64 (neg.f64 eps) #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps)))) (cos.f64 x)))
(fma.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps (cos.f64 x))
(fma.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) (cos.f64 x))
(-.f64 (*.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps) (neg.f64 (cos.f64 x)))
(-.f64 (cos.f64 x) (*.f64 (neg.f64 eps) #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps)))))
(+.f64 (*.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (neg.f64 (neg.f64 eps)) #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps)))))
(+.f64 (cos.f64 x) (neg.f64 (*.f64 (neg.f64 eps) #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))))))
(+.f64 (cos.f64 x) (*.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps))
(*.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps)
(*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))))
#s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps)))
(neg.f64 (-.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x)) x) (*.f64 #s(literal -1/6 binary64) eps)))
(fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))
(fma.f64 #s(literal -1/6 binary64) eps (*.f64 (neg.f64 (neg.f64 x)) (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64))))
(fma.f64 #s(literal -1/6 binary64) eps (*.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x))
(fma.f64 eps #s(literal -1/6 binary64) (*.f64 (neg.f64 (neg.f64 x)) (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64))))
(fma.f64 eps #s(literal -1/6 binary64) (*.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x))
(fma.f64 x (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) (*.f64 #s(literal -1/6 binary64) eps))
(-.f64 (*.f64 #s(literal -1/6 binary64) eps) (*.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x)) x))
(-.f64 (*.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x) (*.f64 #s(literal 1/6 binary64) eps))
(-.f64 (*.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x) (*.f64 (neg.f64 eps) #s(literal -1/6 binary64)))
(-.f64 (*.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x) (neg.f64 (*.f64 #s(literal -1/6 binary64) eps)))
(+.f64 (*.f64 #s(literal -1/6 binary64) eps) (*.f64 (neg.f64 (neg.f64 x)) (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64))))
(+.f64 (*.f64 #s(literal -1/6 binary64) eps) (*.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x))
(+.f64 (*.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x) (*.f64 #s(literal -1/6 binary64) eps))
(*.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x)
(*.f64 x (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)))
(neg.f64 (*.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x)) x))
(fma.f64 (*.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x) x (*.f64 #s(literal -1/2 binary64) x))
(fma.f64 x (*.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x) (*.f64 x #s(literal -1/2 binary64)))
(+.f64 (*.f64 x (*.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x)) (*.f64 x #s(literal -1/2 binary64)))
(+.f64 (*.f64 (*.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x) x) (*.f64 #s(literal -1/2 binary64) x))
(neg.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x)))
(fma.f64 (*.f64 #s(literal 1/12 binary64) eps) x (fma.f64 (*.f64 x x) #s(literal 1/12 binary64) #s(literal -1/2 binary64)))
(fma.f64 (*.f64 #s(literal 1/12 binary64) eps) x (-.f64 (*.f64 (*.f64 x x) #s(literal 1/12 binary64)) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 1/12 binary64) x) (+.f64 eps x) #s(literal -1/2 binary64))
(fma.f64 (*.f64 #s(literal 1/12 binary64) x) eps (fma.f64 (*.f64 x x) #s(literal 1/12 binary64) #s(literal -1/2 binary64)))
(fma.f64 (*.f64 #s(literal 1/12 binary64) x) eps (-.f64 (*.f64 (*.f64 x x) #s(literal 1/12 binary64)) #s(literal 1/2 binary64)))
(fma.f64 #s(literal 1/12 binary64) (*.f64 (+.f64 eps x) x) #s(literal -1/2 binary64))
(fma.f64 #s(literal 1/12 binary64) (*.f64 eps x) (fma.f64 (*.f64 x x) #s(literal 1/12 binary64) #s(literal -1/2 binary64)))
(fma.f64 #s(literal 1/12 binary64) (*.f64 eps x) (-.f64 (*.f64 (*.f64 x x) #s(literal 1/12 binary64)) #s(literal 1/2 binary64)))
(fma.f64 (*.f64 eps x) #s(literal 1/12 binary64) (fma.f64 (*.f64 x x) #s(literal 1/12 binary64) #s(literal -1/2 binary64)))
(fma.f64 (*.f64 eps x) #s(literal 1/12 binary64) (-.f64 (*.f64 (*.f64 x x) #s(literal 1/12 binary64)) #s(literal 1/2 binary64)))
(fma.f64 eps (*.f64 #s(literal 1/12 binary64) x) (fma.f64 (*.f64 x x) #s(literal 1/12 binary64) #s(literal -1/2 binary64)))
(fma.f64 eps (*.f64 #s(literal 1/12 binary64) x) (-.f64 (*.f64 (*.f64 x x) #s(literal 1/12 binary64)) #s(literal 1/2 binary64)))
(fma.f64 x (*.f64 #s(literal 1/12 binary64) eps) (fma.f64 (*.f64 x x) #s(literal 1/12 binary64) #s(literal -1/2 binary64)))
(fma.f64 x (*.f64 #s(literal 1/12 binary64) eps) (-.f64 (*.f64 (*.f64 x x) #s(literal 1/12 binary64)) #s(literal 1/2 binary64)))
(fma.f64 x (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) #s(literal -1/2 binary64))
(-.f64 (*.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x) #s(literal 1/2 binary64))
(+.f64 (*.f64 (*.f64 #s(literal 1/12 binary64) eps) x) (fma.f64 (*.f64 x x) #s(literal 1/12 binary64) #s(literal -1/2 binary64)))
(+.f64 (*.f64 (*.f64 #s(literal 1/12 binary64) eps) x) (-.f64 (*.f64 (*.f64 x x) #s(literal 1/12 binary64)) #s(literal 1/2 binary64)))
(+.f64 (*.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x) #s(literal -1/2 binary64))
(+.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x))
(*.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x)
(*.f64 (*.f64 #s(literal 1/12 binary64) x) (+.f64 eps x))
(*.f64 #s(literal 1/12 binary64) (*.f64 (+.f64 eps x) x))
(*.f64 x (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)))
(fma.f64 (*.f64 x x) #s(literal 1/12 binary64) (*.f64 (*.f64 #s(literal 1/12 binary64) eps) x))
(fma.f64 (*.f64 #s(literal 1/12 binary64) eps) x (*.f64 (*.f64 x x) #s(literal 1/12 binary64)))
(fma.f64 (*.f64 #s(literal 1/12 binary64) x) eps (*.f64 (*.f64 x x) #s(literal 1/12 binary64)))
(fma.f64 (*.f64 #s(literal 1/12 binary64) x) x (*.f64 (*.f64 #s(literal 1/12 binary64) eps) x))
(fma.f64 #s(literal 1/12 binary64) (*.f64 x x) (*.f64 (*.f64 #s(literal 1/12 binary64) eps) x))
(fma.f64 #s(literal 1/12 binary64) (*.f64 eps x) (*.f64 (*.f64 x x) #s(literal 1/12 binary64)))
(fma.f64 (*.f64 eps x) #s(literal 1/12 binary64) (*.f64 (*.f64 x x) #s(literal 1/12 binary64)))
(fma.f64 eps (*.f64 #s(literal 1/12 binary64) x) (*.f64 (*.f64 x x) #s(literal 1/12 binary64)))
(fma.f64 x (*.f64 #s(literal 1/12 binary64) eps) (*.f64 (*.f64 x x) #s(literal 1/12 binary64)))
(fma.f64 x (*.f64 #s(literal 1/12 binary64) x) (*.f64 (*.f64 #s(literal 1/12 binary64) eps) x))
(-.f64 (*.f64 (*.f64 #s(literal 1/12 binary64) eps) x) (*.f64 (neg.f64 x) (*.f64 #s(literal 1/12 binary64) x)))
(-.f64 (*.f64 (*.f64 #s(literal 1/12 binary64) eps) x) (*.f64 (*.f64 #s(literal -1/12 binary64) x) x))
(-.f64 (*.f64 (*.f64 #s(literal 1/12 binary64) eps) x) (neg.f64 (*.f64 (*.f64 x x) #s(literal 1/12 binary64))))
(+.f64 (*.f64 (*.f64 x x) #s(literal 1/12 binary64)) (*.f64 (*.f64 #s(literal 1/12 binary64) eps) x))
(+.f64 (*.f64 (*.f64 #s(literal 1/12 binary64) eps) x) (*.f64 (*.f64 x x) #s(literal 1/12 binary64)))
(*.f64 (+.f64 eps x) #s(literal 1/12 binary64))
(*.f64 #s(literal 1/12 binary64) (+.f64 eps x))
(neg.f64 (-.f64 (*.f64 #s(literal -1/12 binary64) x) (*.f64 #s(literal 1/12 binary64) eps)))
(fma.f64 #s(literal 1/12 binary64) eps (neg.f64 (*.f64 #s(literal -1/12 binary64) x)))
(fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))
(fma.f64 #s(literal 1/12 binary64) x (*.f64 #s(literal 1/12 binary64) eps))
(fma.f64 eps #s(literal 1/12 binary64) (neg.f64 (*.f64 #s(literal -1/12 binary64) x)))
(fma.f64 eps #s(literal 1/12 binary64) (*.f64 #s(literal 1/12 binary64) x))
(fma.f64 x #s(literal 1/12 binary64) (*.f64 #s(literal 1/12 binary64) eps))
(-.f64 (*.f64 #s(literal 1/12 binary64) eps) (*.f64 #s(literal -1/12 binary64) x))
(-.f64 (*.f64 #s(literal 1/12 binary64) x) (*.f64 #s(literal -1/12 binary64) eps))
(-.f64 (*.f64 #s(literal 1/12 binary64) x) (*.f64 (neg.f64 eps) #s(literal 1/12 binary64)))
(-.f64 (*.f64 #s(literal 1/12 binary64) x) (neg.f64 (*.f64 #s(literal 1/12 binary64) eps)))
(+.f64 (*.f64 #s(literal 1/12 binary64) eps) (neg.f64 (*.f64 #s(literal -1/12 binary64) x)))
(+.f64 (*.f64 #s(literal 1/12 binary64) eps) (*.f64 #s(literal 1/12 binary64) x))
(+.f64 (*.f64 #s(literal 1/12 binary64) x) (*.f64 #s(literal 1/12 binary64) eps))
#s(literal 1/12 binary64)
(*.f64 #s(literal 1/12 binary64) x)
(*.f64 x #s(literal 1/12 binary64))
#s(literal 1/2 binary64)
(*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))) (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))))
(*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (-.f64 x (PI.f64)) (PI.f64))) #s(literal 1/2 binary64)))) (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) (-.f64 x (PI.f64)))) #s(literal 1/2 binary64))))
(*.f64 (*.f64 (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) (-.f64 x (PI.f64)))) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (-.f64 x (PI.f64)) (PI.f64))) #s(literal 1/2 binary64)))) #s(literal 2 binary64))
(*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 eps x) (+.f64 (-.f64 (PI.f64) (-.f64 x (PI.f64))) (PI.f64))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 eps x) (+.f64 (-.f64 (PI.f64) (-.f64 x (PI.f64))) (PI.f64))) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64)) (PI.f64)) (+.f64 eps x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64)) (PI.f64)) (+.f64 eps x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (-.f64 (PI.f64) (-.f64 x (PI.f64))) (+.f64 eps x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (-.f64 (PI.f64) (-.f64 x (PI.f64))) (+.f64 eps x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) (+.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64)) (PI.f64))) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps x) (+.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64)) (PI.f64))) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 (PI.f64) x) (+.f64 eps x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 (PI.f64) x) (+.f64 eps x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (neg.f64 x) (+.f64 eps x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (neg.f64 x) (+.f64 eps x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) (+.f64 (PI.f64) x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps x) (+.f64 (PI.f64) x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) (-.f64 x (PI.f64)))) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (-.f64 x (PI.f64)) (PI.f64))) #s(literal 1/2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))))
(neg.f64 (-.f64 (sin.f64 x) (sin.f64 (+.f64 eps x))))
(fma.f64 (cos.f64 eps) (sin.f64 x) (fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))))
(fma.f64 (cos.f64 eps) (sin.f64 x) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
(fma.f64 (cos.f64 eps) (sin.f64 x) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (neg.f64 (neg.f64 (sin.f64 x)))))
(fma.f64 (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) (-.f64 x (PI.f64)))) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (-.f64 x (PI.f64)) (PI.f64))) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) (-.f64 x (PI.f64)))) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (-.f64 x (PI.f64)) (PI.f64))) #s(literal 1/2 binary64)))))
(fma.f64 (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (-.f64 x (PI.f64)) (PI.f64))) #s(literal 1/2 binary64))) (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) (-.f64 x (PI.f64)))) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) (-.f64 x (PI.f64)))) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (-.f64 x (PI.f64)) (PI.f64))) #s(literal 1/2 binary64)))))
(fma.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))))
(fma.f64 (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))))
(fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))))
(fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
(fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (neg.f64 (neg.f64 (sin.f64 x)))))
(-.f64 (sin.f64 (+.f64 eps x)) (neg.f64 (neg.f64 (sin.f64 x))))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(+.f64 (neg.f64 (sin.f64 x)) (sin.f64 (+.f64 eps x)))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (neg.f64 (neg.f64 (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) (-.f64 x (PI.f64)))) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (-.f64 x (PI.f64)) (PI.f64))) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) (-.f64 x (PI.f64)))) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (-.f64 x (PI.f64)) (PI.f64))) #s(literal 1/2 binary64)))))
(+.f64 (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))))
(+.f64 (sin.f64 (+.f64 eps x)) (neg.f64 (sin.f64 x)))
(neg.f64 (sin.f64 (-.f64 (neg.f64 eps) x)))
(sin.f64 (+.f64 eps x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 eps) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 (neg.f64 (neg.f64 eps)))))
(fma.f64 (cos.f64 eps) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 (neg.f64 (neg.f64 eps)))))
(fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (sin.f64 eps) (cos.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 eps) (neg.f64 (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (neg.f64 (cos.f64 x)) (sin.f64 eps)))
(-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (neg.f64 (*.f64 (sin.f64 eps) (cos.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (cos.f64 x) (neg.f64 (sin.f64 eps))))
(+.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (cos.f64 x) (sin.f64 (neg.f64 (neg.f64 eps)))))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x)))
(neg.f64 (-.f64 (neg.f64 eps) x))
(-.f64 eps (neg.f64 x))
(-.f64 x (neg.f64 eps))
(+.f64 eps x)
(+.f64 x (neg.f64 (neg.f64 eps)))
(+.f64 x eps)
(neg.f64 (neg.f64 (sin.f64 x)))
(sin.f64 (neg.f64 (+.f64 (PI.f64) x)))
(sin.f64 (neg.f64 (+.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64)) (PI.f64))))
(sin.f64 (+.f64 (+.f64 (-.f64 (PI.f64) (-.f64 x (PI.f64))) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (+.f64 (PI.f64) x) (PI.f64)))
(sin.f64 (+.f64 (+.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64)) (PI.f64)) (PI.f64)))
(sin.f64 (neg.f64 (neg.f64 x)))
(sin.f64 (+.f64 (-.f64 (PI.f64) (-.f64 x (PI.f64))) (PI.f64)))
(sin.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64)))
(sin.f64 (-.f64 (PI.f64) x))
(fma.f64 (neg.f64 (sin.f64 x)) #s(literal -1 binary64) (*.f64 (cos.f64 (-.f64 (PI.f64) (-.f64 x (PI.f64)))) #s(literal 0 binary64)))
(fma.f64 (neg.f64 (sin.f64 x)) #s(literal -1 binary64) (*.f64 (cos.f64 x) #s(literal 0 binary64)))
(fma.f64 (neg.f64 (sin.f64 x)) #s(literal -1 binary64) (*.f64 (neg.f64 (cos.f64 x)) #s(literal 0 binary64)))
(fma.f64 #s(literal 0 binary64) (neg.f64 (cos.f64 x)) (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x))))
(fma.f64 #s(literal 0 binary64) (cos.f64 x) (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 (-.f64 (PI.f64) (-.f64 x (PI.f64)))) #s(literal 0 binary64)) (*.f64 (neg.f64 (sin.f64 x)) #s(literal 1 binary64)))
(-.f64 (*.f64 (neg.f64 (sin.f64 x)) #s(literal -1 binary64)) (*.f64 (neg.f64 (cos.f64 x)) (sin.f64 (neg.f64 (neg.f64 (PI.f64))))))
(-.f64 (*.f64 (neg.f64 (sin.f64 x)) #s(literal -1 binary64)) (*.f64 (neg.f64 (cos.f64 x)) #s(literal 0 binary64)))
(-.f64 (*.f64 #s(literal 0 binary64) (neg.f64 (cos.f64 x))) (*.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 (sin.f64 x)))))
(-.f64 (*.f64 #s(literal 0 binary64) (cos.f64 x)) (*.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 (sin.f64 x)))))
(-.f64 (*.f64 #s(literal 0 binary64) (cos.f64 x)) (*.f64 #s(literal -1 binary64) (sin.f64 x)))
(cos.f64 (neg.f64 (+.f64 (-.f64 (PI.f64) (-.f64 x (PI.f64))) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(cos.f64 (fabs.f64 (+.f64 (-.f64 (PI.f64) (-.f64 x (PI.f64))) (*.f64 (PI.f64) #s(literal 1/2 binary64)))))
(cos.f64 (+.f64 (+.f64 (PI.f64) x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (+.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64)) (PI.f64)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64)) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (PI.f64)))
(cos.f64 (+.f64 (-.f64 (PI.f64) (-.f64 x (PI.f64))) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (neg.f64 (sin.f64 x)) #s(literal -1 binary64)) (*.f64 (cos.f64 (-.f64 (PI.f64) (-.f64 x (PI.f64)))) #s(literal 0 binary64)))
(+.f64 (*.f64 (neg.f64 (sin.f64 x)) #s(literal -1 binary64)) (*.f64 (cos.f64 x) #s(literal 0 binary64)))
(+.f64 (*.f64 (neg.f64 (sin.f64 x)) #s(literal -1 binary64)) (*.f64 (neg.f64 (cos.f64 x)) #s(literal 0 binary64)))
(+.f64 (*.f64 #s(literal 0 binary64) (neg.f64 (cos.f64 x))) (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x))))
(+.f64 (*.f64 #s(literal 0 binary64) (cos.f64 x)) (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x))))
(neg.f64 (-.f64 (PI.f64) (-.f64 x (PI.f64))))
(fma.f64 (neg.f64 (cbrt.f64 (*.f64 (PI.f64) (PI.f64)))) (cbrt.f64 (PI.f64)) (-.f64 x (PI.f64)))
(fma.f64 (cbrt.f64 (*.f64 (PI.f64) (PI.f64))) (neg.f64 (cbrt.f64 (PI.f64))) (-.f64 x (PI.f64)))
(-.f64 (-.f64 x (PI.f64)) (neg.f64 (neg.f64 (PI.f64))))
(-.f64 (-.f64 x (PI.f64)) (PI.f64))
(-.f64 (neg.f64 (PI.f64)) (-.f64 (PI.f64) x))
(+.f64 (-.f64 x (PI.f64)) (neg.f64 (PI.f64)))
(+.f64 (neg.f64 (PI.f64)) (-.f64 x (PI.f64)))
(neg.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64)))
(-.f64 (+.f64 (PI.f64) (PI.f64)) x)
(-.f64 (-.f64 (PI.f64) x) (neg.f64 (PI.f64)))
(-.f64 (PI.f64) (-.f64 x (PI.f64)))
(+.f64 (+.f64 (PI.f64) (PI.f64)) (neg.f64 x))
(+.f64 (-.f64 (PI.f64) x) (neg.f64 (neg.f64 (PI.f64))))
(+.f64 (-.f64 (PI.f64) x) (PI.f64))
(+.f64 (PI.f64) (-.f64 (neg.f64 x) (neg.f64 (PI.f64))))
(+.f64 (PI.f64) (-.f64 (PI.f64) x))
(neg.f64 (-.f64 x (PI.f64)))
(-.f64 (PI.f64) (neg.f64 (neg.f64 x)))
(-.f64 (PI.f64) x)
(+.f64 (neg.f64 x) (PI.f64))
(+.f64 (PI.f64) (neg.f64 x))
(PI.f64)

eval99.0ms (1.4%)

Memory
20.2MiB live, 65.5MiB allocated; 5ms collecting garbage
Compiler

Compiled 8 230 to 3 440 computations (58.2% saved)

prune69.0ms (1%)

Memory
-46.7MiB live, 50.5MiB allocated; 16ms collecting garbage
Pruning

26 alts after pruning (23 fresh and 3 done)

PrunedKeptTotal
New63312645
Fresh41115
Picked325
Done011
Total64026666
Accuracy
100.0%
Counts
666 → 26
Alt Table
Click to see full alt table
StatusAccuracyProgram
3.4%
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64))))
3.4%
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (PI.f64) x)))
61.1%
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
60.3%
(-.f64 (sin.f64 #s(approx (+ x eps) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 eps x))))) (sin.f64 x))
99.9%
(*.f64 (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))) #s(literal 2 binary64)) (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))))
100.0%
#s(approx (- (sin (+ x eps)) (sin x)) (fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))))
99.8%
#s(approx (- (sin (+ x eps)) (sin x)) (fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps #s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) #s(literal -1/6 binary64)) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))))
99.7%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)) eps))
99.2%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps (cos.f64 x)) eps))
100.0%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps))
98.5%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))) eps))
99.8%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps #s(approx (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))) #s(literal -1/6 binary64))))))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (*.f64 #s(literal -1/6 binary64) eps))))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x #s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) #s(literal -1/2 binary64)))))))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) #s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 eps (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/6 binary64)))))))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) #s(approx (* eps (sin x)) (*.f64 eps x))))))
99.2%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) #s(approx (* -1/2 (* eps (sin x))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
98.5%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))))
98.8%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/2 binary64) x)))))))
98.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) #s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) eps)))))))
98.5%
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64))))))
98.5%
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
99.0%
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
Compiler

Compiled 989 to 943 computations (4.7% saved)

series48.0ms (0.7%)

Memory
44.1MiB live, 87.0MiB allocated; 5ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06934220
Stop Event
iter-limit
Counts
41 → 169
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps))
(*.f64 (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps)
(fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x))
eps
(fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)))
(cos.f64 x)
x
#s(literal -1/6 binary64)
(*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))
(*.f64 (sin.f64 x) eps)
(sin.f64 x)
#s(literal 1/24 binary64)
(*.f64 (sin.f64 x) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps)
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))))
(*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))
(+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))
#s(literal 1 binary64)
(fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))
(*.f64 eps x)
(*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))
(pow.f64 eps #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
#s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))))
(+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))
(*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))
(pow.f64 x #s(literal 2 binary64))
(fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))
(*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))
(*.f64 eps (pow.f64 x #s(literal 2 binary64)))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (PI.f64) x)))
(sin.f64 (+.f64 x eps))
(+.f64 x eps)
(sin.f64 (-.f64 (PI.f64) x))
(-.f64 (PI.f64) x)
(PI.f64)
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
#s(approx (- (sin (+ x eps)) (sin x)) (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (cos.f64 eps) #s(literal 1 binary64)))))
#s(approx (- (sin (+ x eps)) (sin x)) (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (+.f64 (cos.f64 eps) (*.f64 #s(literal -1/2 binary64) (*.f64 x (sin.f64 eps)))) #s(literal 1 binary64)))))
#s(approx (- (sin (+ x eps)) (sin x)) (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (+.f64 (cos.f64 eps) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (sin.f64 eps) (*.f64 x (+.f64 #s(literal 1/6 binary64) (*.f64 #s(literal -1/6 binary64) (cos.f64 eps))))))) #s(literal 1 binary64)))))
#s(approx (* (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) eps) (*.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))
#s(approx (* (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) eps) (fma.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))))))
#s(approx (* (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) eps) (fma.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))) (*.f64 x (fma.f64 eps (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (* (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) eps) (fma.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))) (*.f64 x (fma.f64 x (fma.f64 eps (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1/144 binary64) (pow.f64 eps #s(literal 2 binary64))))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))
#s(approx (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 eps (*.f64 x (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))
#s(approx (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 eps (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))))))))
#s(approx (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 eps (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 x (-.f64 (fma.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 eps (*.f64 x (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1/144 binary64) (pow.f64 eps #s(literal 2 binary64))))))) #s(literal 1/2 binary64))))))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 #s(literal -1/6 binary64) eps))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (fma.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 #s(literal 1/12 binary64) (*.f64 eps x))) #s(literal 1/2 binary64)))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (fma.f64 #s(literal 1/24 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 x (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1/144 binary64) (pow.f64 eps #s(literal 2 binary64)))))))) #s(literal 1/2 binary64)))))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) #s(literal -1/6 binary64))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 eps x)) #s(literal 1/6 binary64)))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) (-.f64 (*.f64 x (fma.f64 #s(literal 1/24 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/6 binary64)))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) (-.f64 (*.f64 x (fma.f64 #s(literal 1/24 binary64) eps (*.f64 x (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1/144 binary64) (*.f64 eps x)))))) #s(literal 1/6 binary64)))
#s(approx (cos x) #s(literal 1 binary64))
#s(approx (cos x) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (pow.f64 x #s(literal 2 binary64)))))
#s(approx (cos x) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
#s(approx (cos x) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 #s(literal 1/24 binary64) (*.f64 #s(literal -1/720 binary64) (pow.f64 x #s(literal 2 binary64))))) #s(literal 1/2 binary64)))))
#s(approx x x)
#s(approx (* (* (sin x) eps) 1/24) (*.f64 #s(literal 1/24 binary64) (*.f64 eps x)))
#s(approx (* (* (sin x) eps) 1/24) (*.f64 x (fma.f64 #s(literal -1/144 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/24 binary64) eps))))
#s(approx (* (* (sin x) eps) 1/24) (*.f64 x (fma.f64 #s(literal 1/24 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/144 binary64) eps (*.f64 #s(literal 1/2880 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
#s(approx (* (* (sin x) eps) 1/24) (*.f64 x (fma.f64 #s(literal 1/24 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/144 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/120960 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/2880 binary64) eps))))))))
#s(approx (* (sin x) eps) (*.f64 eps x))
#s(approx (* (sin x) eps) (*.f64 x (+.f64 eps (*.f64 #s(literal -1/6 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (* (sin x) eps) (*.f64 x (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 #s(literal 1/120 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
#s(approx (* (sin x) eps) (*.f64 x (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/120 binary64) eps))))))))
#s(approx (sin x) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 x #s(literal 2 binary64))))))
#s(approx (sin x) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/6 binary64))))))
#s(approx (sin x) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (pow.f64 x #s(literal 2 binary64))))) #s(literal 1/6 binary64))))))
#s(approx (* (sin x) -1/2) (*.f64 #s(literal -1/2 binary64) x))
#s(approx (* (sin x) -1/2) (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* (sin x) -1/2) (*.f64 x (-.f64 (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 #s(literal 1/12 binary64) (*.f64 #s(literal -1/240 binary64) (pow.f64 x #s(literal 2 binary64))))) #s(literal 1/2 binary64))))
#s(approx (* (sin x) -1/2) (*.f64 x (-.f64 (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/10080 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/240 binary64))))) #s(literal 1/2 binary64))))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps)
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (+.f64 eps (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x))))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (+.f64 eps (*.f64 x (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/2 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (+.f64 eps (*.f64 x (fma.f64 #s(literal -1/2 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x))))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x) (*.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (fma.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 eps (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (fma.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal 1/12 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) x) (*.f64 eps (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64)))))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 x (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64))) #s(literal 1/2 binary64))))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 x (-.f64 (fma.f64 #s(literal 1/12 binary64) (*.f64 eps x) (*.f64 #s(literal 1/12 binary64) (pow.f64 eps #s(literal 2 binary64)))) #s(literal 1/2 binary64))))))))
#s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))
#s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))
#s(approx (* eps (cos x)) (+.f64 eps (*.f64 #s(literal -1/2 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))
#s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))))
#s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/720 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/24 binary64) eps)))))))
#s(approx (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2))))) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))
#s(approx (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2))))) (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (pow x 2) (pow.f64 x #s(literal 2 binary64)))
#s(approx (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2)))) (*.f64 #s(literal -1/2 binary64) eps))
#s(approx (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2)))) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))
#s(approx (* 1/24 (* eps (pow x 2))) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))
#s(approx (* eps (pow x 2)) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))
#s(approx (- (sin (+ x eps)) (sin (- (PI) x))) (-.f64 (sin.f64 eps) (sin.f64 (PI.f64))))
#s(approx (- (sin (+ x eps)) (sin (- (PI) x))) (-.f64 (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (cos.f64 eps) (*.f64 #s(literal -1 binary64) (cos.f64 (PI.f64)))))) (sin.f64 (PI.f64))))
#s(approx (- (sin (+ x eps)) (sin (- (PI) x))) (-.f64 (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (+.f64 (cos.f64 eps) (*.f64 x (-.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 eps)) (*.f64 #s(literal -1/2 binary64) (sin.f64 (PI.f64)))))) (*.f64 #s(literal -1 binary64) (cos.f64 (PI.f64)))))) (sin.f64 (PI.f64))))
#s(approx (- (sin (+ x eps)) (sin (- (PI) x))) (-.f64 (+.f64 (sin.f64 eps) (*.f64 x (-.f64 (+.f64 (cos.f64 eps) (*.f64 x (-.f64 (fma.f64 #s(literal -1/2 binary64) (sin.f64 eps) (*.f64 x (-.f64 (*.f64 #s(literal -1/6 binary64) (cos.f64 eps)) (*.f64 #s(literal 1/6 binary64) (cos.f64 (PI.f64)))))) (*.f64 #s(literal -1/2 binary64) (sin.f64 (PI.f64)))))) (*.f64 #s(literal -1 binary64) (cos.f64 (PI.f64)))))) (sin.f64 (PI.f64))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 eps) (*.f64 x (cos.f64 eps))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 eps) (*.f64 x (+.f64 (cos.f64 eps) (*.f64 #s(literal -1/2 binary64) (*.f64 x (sin.f64 eps)))))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 eps) (*.f64 x (+.f64 (cos.f64 eps) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (sin.f64 eps) (*.f64 #s(literal -1/6 binary64) (*.f64 x (cos.f64 eps)))))))))
#s(approx (+ x eps) (+.f64 eps x))
#s(approx (sin (- (PI) x)) (sin.f64 (PI.f64)))
#s(approx (sin (- (PI) x)) (+.f64 (sin.f64 (PI.f64)) (*.f64 #s(literal -1 binary64) (*.f64 x (cos.f64 (PI.f64))))))
#s(approx (sin (- (PI) x)) (+.f64 (sin.f64 (PI.f64)) (*.f64 x (fma.f64 #s(literal -1 binary64) (cos.f64 (PI.f64)) (*.f64 #s(literal -1/2 binary64) (*.f64 x (sin.f64 (PI.f64))))))))
#s(approx (sin (- (PI) x)) (+.f64 (sin.f64 (PI.f64)) (*.f64 x (fma.f64 #s(literal -1 binary64) (cos.f64 (PI.f64)) (*.f64 x (fma.f64 #s(literal -1/2 binary64) (sin.f64 (PI.f64)) (*.f64 #s(literal 1/6 binary64) (*.f64 x (cos.f64 (PI.f64))))))))))
#s(approx (- (PI) x) (PI.f64))
#s(approx (- (PI) x) (+.f64 (PI.f64) (*.f64 #s(literal -1 binary64) x)))
#s(approx (- (sin (+ x eps)) (sin x)) (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
#s(approx (* (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) eps) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))))))))
#s(approx (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))))))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))))))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x)))))
#s(approx (cos x) (cos.f64 x))
#s(approx (* (* (sin x) eps) 1/24) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))
#s(approx (* (sin x) eps) (*.f64 eps (sin.f64 x)))
#s(approx (sin x) (sin.f64 x))
#s(approx (* (sin x) -1/2) (*.f64 #s(literal -1/2 binary64) (sin.f64 x)))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))))
#s(approx (+ 1 (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2)))) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x)))
#s(approx (+ 1 (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2)))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (fma.f64 #s(literal -1/6 binary64) (/.f64 (pow.f64 eps #s(literal 2 binary64)) x) (/.f64 #s(literal 1 binary64) x)))))
#s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/6 binary64) (/.f64 (pow.f64 eps #s(literal 2 binary64)) x)))))
#s(approx (* eps (cos x)) (*.f64 eps (cos.f64 x)))
#s(approx (+ eps (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2)))))) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 4 binary64)))))
#s(approx (+ eps (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2)))))) (*.f64 (pow.f64 x #s(literal 4 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/24 binary64) eps))))
#s(approx (+ eps (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2)))))) (*.f64 (pow.f64 x #s(literal 4 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 eps (pow.f64 x #s(literal 2 binary64))) (fma.f64 #s(literal 1/24 binary64) eps (/.f64 eps (pow.f64 x #s(literal 4 binary64)))))))
#s(approx (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2)))) (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 eps (pow.f64 x #s(literal 2 binary64))) (*.f64 #s(literal 1/24 binary64) eps))))
#s(approx (- (sin (+ x eps)) (sin (- (PI) x))) (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 (-.f64 (PI.f64) x))))
#s(approx (sin (+ x eps)) (sin.f64 (+.f64 eps x)))
#s(approx (+ x eps) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 eps x))))
#s(approx (sin (- (PI) x)) (sin.f64 (-.f64 (PI.f64) x)))
#s(approx (- (PI) x) (*.f64 #s(literal -1 binary64) x))
#s(approx (- (PI) x) (*.f64 x (-.f64 (/.f64 (PI.f64) x) #s(literal 1 binary64))))
#s(approx (- (sin (+ x eps)) (sin x)) (-.f64 (sin.f64 (-.f64 eps (*.f64 #s(literal -1 binary64) x))) (sin.f64 x)))
#s(approx (+ 1 (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2)))) (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))) x) (*.f64 #s(literal 1/2 binary64) eps)))))
#s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (*.f64 #s(literal -1 binary64) (*.f64 x (fma.f64 #s(literal 1/6 binary64) (/.f64 (pow.f64 eps #s(literal 2 binary64)) x) (*.f64 #s(literal 1/2 binary64) eps)))))
#s(approx (- (sin (+ x eps)) (sin (- (PI) x))) (-.f64 (sin.f64 (-.f64 eps (*.f64 #s(literal -1 binary64) x))) (sin.f64 (+.f64 (PI.f64) (*.f64 #s(literal -1 binary64) x)))))
#s(approx (sin (+ x eps)) (sin.f64 (-.f64 eps (*.f64 #s(literal -1 binary64) x))))
#s(approx (+ x eps) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 eps x)) #s(literal 1 binary64)))))
#s(approx (sin (- (PI) x)) (sin.f64 (+.f64 (PI.f64) (*.f64 #s(literal -1 binary64) x))))
#s(approx (- (PI) x) (*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (PI.f64) x))))))
#s(approx (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x)))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))
#s(approx (+ 1 (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))
#s(approx (+ 1 (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2)))) (+.f64 #s(literal 1 binary64) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps)))))
#s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps))))
#s(approx (pow eps 2) (pow.f64 eps #s(literal 2 binary64)))
#s(approx (+ eps (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2)))))) (*.f64 eps (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64))))))
#s(approx (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2))))) (*.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
#s(approx (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2)))) (*.f64 eps (-.f64 (*.f64 #s(literal 1/24 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/2 binary64))))
#s(approx (- (sin (+ x eps)) (sin (- (PI) x))) (-.f64 (sin.f64 x) (sin.f64 (-.f64 (PI.f64) x))))
#s(approx (- (sin (+ x eps)) (sin (- (PI) x))) (-.f64 (+.f64 (sin.f64 x) (*.f64 eps (cos.f64 x))) (sin.f64 (-.f64 (PI.f64) x))))
#s(approx (- (sin (+ x eps)) (sin (- (PI) x))) (-.f64 (+.f64 (sin.f64 x) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x)))))) (sin.f64 (-.f64 (PI.f64) x))))
#s(approx (- (sin (+ x eps)) (sin (- (PI) x))) (-.f64 (+.f64 (sin.f64 x) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))))) (sin.f64 (-.f64 (PI.f64) x))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 x) (*.f64 eps (cos.f64 x))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 x) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x)))))))
#s(approx (sin (+ x eps)) (+.f64 (sin.f64 x) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x)))))))))
#s(approx (* (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) eps) (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (sin.f64 x))))
#s(approx (* (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) eps) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (* (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) eps) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) (pow.f64 eps #s(literal 2 binary64))) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x))))))
#s(approx (* (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) eps) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) (pow.f64 eps #s(literal 2 binary64))) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (fma.f64 #s(literal 1/24 binary64) (sin.f64 x) (/.f64 (cos.f64 x) (pow.f64 eps #s(literal 3 binary64))))))))
#s(approx (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (sin.f64 x))))
#s(approx (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) (pow.f64 eps #s(literal 2 binary64))) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x))))))
#s(approx (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) (pow.f64 eps #s(literal 2 binary64))) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (fma.f64 #s(literal 1/24 binary64) (sin.f64 x) (/.f64 (cos.f64 x) (pow.f64 eps #s(literal 3 binary64))))))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 #s(literal 1/24 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (sin.f64 x))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) (pow.f64 eps #s(literal 2 binary64))) (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x))))))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (*.f64 #s(literal -1/2 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (sin.f64 x))))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (/.f64 (cos.f64 x) eps))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (cos.f64 x))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (/.f64 (cos.f64 x) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (*.f64 #s(literal -1/6 binary64) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (cos.f64 x))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (/.f64 (cos.f64 x) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (+ 1 (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2)))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/2 binary64) (/.f64 x eps)) #s(literal 1/6 binary64))))
#s(approx (+ 1 (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2)))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (-.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 x eps) (/.f64 #s(literal 1 binary64) (pow.f64 eps #s(literal 2 binary64)))) #s(literal 1/6 binary64))))
#s(approx (+ x eps) (*.f64 eps (+.f64 #s(literal 1 binary64) (/.f64 x eps))))
#s(approx (- (sin (+ x eps)) (sin x)) (-.f64 (sin.f64 (-.f64 x (*.f64 #s(literal -1 binary64) eps))) (sin.f64 x)))
#s(approx (* (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) eps) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/2 binary64) (/.f64 (sin.f64 x) eps))) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (* (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) eps) (*.f64 (pow.f64 eps #s(literal 4 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (/.f64 (cos.f64 x) eps)) eps) (*.f64 #s(literal 1/6 binary64) (cos.f64 x))) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/24 binary64) (sin.f64 x) (*.f64 #s(literal 1/6 binary64) (/.f64 (cos.f64 x) eps))))))
#s(approx (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x))) eps) (*.f64 #s(literal -1/24 binary64) (sin.f64 x))))))
#s(approx (+ (* eps (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2))) (cos x)) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/2 binary64) (sin.f64 x))) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x))) eps) (*.f64 #s(literal -1/24 binary64) (sin.f64 x))))))
#s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/2 binary64) (/.f64 (sin.f64 x) eps))) eps) (*.f64 #s(literal 1/24 binary64) (sin.f64 x)))))
#s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) (*.f64 #s(literal -1 binary64) (*.f64 eps (fma.f64 #s(literal -1/24 binary64) (sin.f64 x) (*.f64 #s(literal 1/6 binary64) (/.f64 (cos.f64 x) eps))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal 1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/2 binary64) (/.f64 (sin.f64 x) eps))))))
#s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 #s(literal -1 binary64) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (/.f64 (cos.f64 x) eps)) eps) (*.f64 #s(literal 1/6 binary64) (cos.f64 x))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (fma.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/2 binary64) (sin.f64 x))) eps) (*.f64 #s(literal -1/6 binary64) (cos.f64 x)))))
#s(approx (+ 1 (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2)))) (*.f64 (pow.f64 eps #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) x) (/.f64 #s(literal 1 binary64) eps)) eps)) #s(literal 1/6 binary64))))
#s(approx (+ eps (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2)))))) (*.f64 #s(literal -1 binary64) (*.f64 eps (-.f64 (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/24 binary64) (pow.f64 x #s(literal 2 binary64))))) #s(literal 1 binary64)))))
#s(approx (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2))))) (*.f64 #s(literal -1 binary64) (*.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/24 binary64) (pow.f64 x #s(literal 2 binary64))))))))
#s(approx (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2)))) (*.f64 #s(literal -1 binary64) (*.f64 eps (+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/24 binary64) (pow.f64 x #s(literal 2 binary64)))))))
#s(approx (- (sin (+ x eps)) (sin (- (PI) x))) (-.f64 (sin.f64 (-.f64 x (*.f64 #s(literal -1 binary64) eps))) (sin.f64 (-.f64 (PI.f64) x))))
#s(approx (sin (+ x eps)) (sin.f64 (-.f64 x (*.f64 #s(literal -1 binary64) eps))))
#s(approx (+ x eps) (*.f64 #s(literal -1 binary64) (*.f64 eps (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 x eps)) #s(literal 1 binary64)))))
Calls

6 calls:

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

rewrite220.0ms (3.1%)

Memory
-40.3MiB live, 204.3MiB allocated; 41ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056418
091418
1490418
24493416
08225401
126092401
Stop Event
saturated
node-limit
iter-limit
Counts
41 → 383
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps))
(*.f64 (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps)
(fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x))
eps
(fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64)))
(cos.f64 x)
x
#s(literal -1/6 binary64)
(*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))
(*.f64 (sin.f64 x) eps)
(sin.f64 x)
#s(literal 1/24 binary64)
(*.f64 (sin.f64 x) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps)
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))))
(*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))
(+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))
#s(literal 1 binary64)
(fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))
(*.f64 eps x)
(*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))
(pow.f64 eps #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
#s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))))
(+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))
(*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))
(pow.f64 x #s(literal 2 binary64))
(fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))
(*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))
(*.f64 eps (pow.f64 x #s(literal 2 binary64)))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (PI.f64) x)))
(sin.f64 (+.f64 x eps))
(+.f64 x eps)
(sin.f64 (-.f64 (PI.f64) x))
(-.f64 (PI.f64) x)
(PI.f64)
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps))
(*.f64 (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps)
(*.f64 eps (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)))
(fma.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) eps (*.f64 (cos.f64 x) eps))
(fma.f64 (cos.f64 x) eps (*.f64 eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps)))
(fma.f64 (cos.f64 x) eps (*.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) eps))
(fma.f64 eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) (*.f64 (cos.f64 x) eps))
(fma.f64 eps (cos.f64 x) (*.f64 eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps)))
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) eps))
(+.f64 (*.f64 eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps)) (*.f64 (cos.f64 x) eps))
(+.f64 (*.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) eps) (*.f64 (cos.f64 x) eps))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps)))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) eps))
(neg.f64 (-.f64 (neg.f64 (cos.f64 x)) (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps)))
(fma.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps) eps (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)))
(fma.f64 (*.f64 eps eps) (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)))
(fma.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps (neg.f64 (neg.f64 (cos.f64 x))))
(fma.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps (cos.f64 x))
(fma.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 eps eps) (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)))
(fma.f64 eps (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps) (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)))
(fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (neg.f64 (neg.f64 (cos.f64 x))))
(fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x))
(-.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) (neg.f64 (cos.f64 x)))
(-.f64 (cos.f64 x) (*.f64 (neg.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))) eps))
(-.f64 (cos.f64 x) (*.f64 (neg.f64 eps) (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))))
(-.f64 (cos.f64 x) (neg.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps)))
(+.f64 (+.f64 (cos.f64 x) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 eps eps))) (*.f64 #s(literal -1/2 binary64) (*.f64 (sin.f64 x) eps)))
(+.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 eps eps)) (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)))
(+.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) (neg.f64 (neg.f64 (cos.f64 x))))
(+.f64 (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) eps))
eps
(neg.f64 (-.f64 (*.f64 (sin.f64 x) #s(literal 1/2 binary64)) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps)))
(fma.f64 (*.f64 #s(literal -1/6 binary64) eps) (cos.f64 x) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) eps) (cos.f64 x) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 x) #s(literal -1/6 binary64)) eps (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 x) #s(literal -1/6 binary64)) eps (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(fma.f64 (cos.f64 x) (*.f64 #s(literal -1/6 binary64) eps) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 (cos.f64 x) (*.f64 #s(literal -1/6 binary64) eps) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps))
(fma.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps (*.f64 (neg.f64 (neg.f64 (sin.f64 x))) #s(literal -1/2 binary64)))
(fma.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps (neg.f64 (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(fma.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 x) eps) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (cos.f64 x) eps) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(fma.f64 eps (*.f64 (cos.f64 x) #s(literal -1/6 binary64)) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(fma.f64 eps (*.f64 (cos.f64 x) #s(literal -1/6 binary64)) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (neg.f64 (neg.f64 (sin.f64 x))) #s(literal -1/2 binary64)))
(fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (neg.f64 (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(-.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64)))
(-.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 (neg.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)))) eps))
(-.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 (neg.f64 eps) (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)))))
(-.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (neg.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps)))
(+.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps) (*.f64 (neg.f64 (neg.f64 (sin.f64 x))) #s(literal -1/2 binary64)))
(+.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps) (neg.f64 (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps) (*.f64 (sin.f64 x) #s(literal -1/2 binary64)))
(+.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps))
(+.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) (fma.f64 (*.f64 eps (*.f64 (sin.f64 x) eps)) #s(literal 1/24 binary64) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))))
(+.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64)) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) eps) (*.f64 (sin.f64 x) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (sin.f64 x) #s(literal -1/2 binary64)) (*.f64 (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))) eps))
(neg.f64 (-.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps)) (*.f64 (cos.f64 x) #s(literal -1/6 binary64))))
(fma.f64 (*.f64 #s(literal 1/24 binary64) (sin.f64 x)) eps (*.f64 (cos.f64 x) #s(literal -1/6 binary64)))
(fma.f64 (*.f64 #s(literal 1/24 binary64) eps) (sin.f64 x) (*.f64 (cos.f64 x) #s(literal -1/6 binary64)))
(fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (neg.f64 (*.f64 (neg.f64 eps) (sin.f64 x))) #s(literal 1/24 binary64)))
(fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (neg.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps))))
(fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)))
(fma.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps) (*.f64 (cos.f64 x) #s(literal -1/6 binary64)))
(fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64) (*.f64 (cos.f64 x) #s(literal -1/6 binary64)))
(fma.f64 (sin.f64 x) (*.f64 #s(literal 1/24 binary64) eps) (*.f64 (cos.f64 x) #s(literal -1/6 binary64)))
(fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 (neg.f64 (*.f64 (neg.f64 eps) (sin.f64 x))) #s(literal 1/24 binary64)))
(fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (neg.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps))))
(fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)))
(fma.f64 eps (*.f64 (sin.f64 x) #s(literal 1/24 binary64)) (*.f64 (cos.f64 x) #s(literal -1/6 binary64)))
(-.f64 (*.f64 (cos.f64 x) #s(literal -1/6 binary64)) (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps)))
(-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) (*.f64 (neg.f64 (cos.f64 x)) #s(literal -1/6 binary64)))
(-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) (*.f64 #s(literal 1/6 binary64) (cos.f64 x)))
(-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) (neg.f64 (*.f64 (cos.f64 x) #s(literal -1/6 binary64))))
(+.f64 (*.f64 (cos.f64 x) #s(literal -1/6 binary64)) (*.f64 (neg.f64 (*.f64 (neg.f64 eps) (sin.f64 x))) #s(literal 1/24 binary64)))
(+.f64 (*.f64 (cos.f64 x) #s(literal -1/6 binary64)) (neg.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (sin.f64 x) eps))))
(+.f64 (*.f64 (cos.f64 x) #s(literal -1/6 binary64)) (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)))
(+.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps)) (*.f64 (cos.f64 x) #s(literal -1/6 binary64)))
(sin.f64 (+.f64 (neg.f64 (neg.f64 x)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 (fabs.f64 x)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 (fabs.f64 x)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (+.f64 (fabs.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x))
(fma.f64 (sin.f64 (fabs.f64 x)) #s(literal 0 binary64) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(fma.f64 (neg.f64 (sin.f64 x)) #s(literal 0 binary64) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 x) (*.f64 #s(literal 0 binary64) (sin.f64 x)))
(fma.f64 (sin.f64 x) #s(literal 0 binary64) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(-.f64 (*.f64 (sin.f64 x) #s(literal 0 binary64)) (*.f64 (cos.f64 x) (sin.f64 (neg.f64 (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 x))))
(cos.f64 (neg.f64 (neg.f64 (fabs.f64 x))))
(cos.f64 (neg.f64 (fabs.f64 (fabs.f64 x))))
(cos.f64 (fabs.f64 (neg.f64 (neg.f64 x))))
(cos.f64 (fabs.f64 (neg.f64 (fabs.f64 x))))
(cos.f64 (fabs.f64 (fabs.f64 (fabs.f64 x))))
(cos.f64 (neg.f64 (neg.f64 x)))
(cos.f64 (neg.f64 (fabs.f64 x)))
(cos.f64 (fabs.f64 (fabs.f64 x)))
(cos.f64 (neg.f64 x))
(cos.f64 (fabs.f64 x))
(cos.f64 x)
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 x)) (*.f64 #s(literal 0 binary64) (sin.f64 x)))
(+.f64 (*.f64 (sin.f64 (fabs.f64 x)) #s(literal 0 binary64)) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(+.f64 (*.f64 (sin.f64 x) #s(literal 0 binary64)) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
(+.f64 (*.f64 (neg.f64 (sin.f64 x)) #s(literal 0 binary64)) (*.f64 (cos.f64 x) #s(literal 1 binary64)))
x
#s(literal -1/6 binary64)
(*.f64 (*.f64 #s(literal 1/24 binary64) (sin.f64 x)) eps)
(*.f64 (*.f64 #s(literal 1/24 binary64) eps) (sin.f64 x))
(*.f64 #s(literal 1/24 binary64) (*.f64 (sin.f64 x) eps))
(*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))
(*.f64 (sin.f64 x) (*.f64 #s(literal 1/24 binary64) eps))
(*.f64 eps (*.f64 (sin.f64 x) #s(literal 1/24 binary64)))
(*.f64 (sin.f64 x) eps)
(*.f64 eps (sin.f64 x))
(sin.f64 x)
#s(literal 1/24 binary64)
(*.f64 #s(literal -1/2 binary64) (sin.f64 x))
(*.f64 (sin.f64 x) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
#s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps)
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) x) eps (fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps #s(literal 1 binary64)))) eps))
(*.f64 #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) x) eps (fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps #s(literal 1 binary64)))) eps)
(*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) x) eps (fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps #s(literal 1 binary64)))))
#s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) x) eps (fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps #s(literal 1 binary64))))
(*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) x) eps (fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps #s(literal 1 binary64))) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal -1/2 binary64) x) eps (fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps #s(literal 1 binary64))))
(/.f64 (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) x) eps (fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps #s(literal 1 binary64))) #s(literal 2 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64))) #s(literal 2 binary64) #s(literal 2 binary64)) #s(literal 2 binary64))
(neg.f64 (-.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 eps eps)) (*.f64 (*.f64 eps x) #s(literal -1/2 binary64))) #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) x) eps (fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps (fma.f64 (*.f64 #s(literal -1/2 binary64) eps) x #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) x (fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64))) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 eps eps) #s(literal -1/6 binary64) (fma.f64 (*.f64 #s(literal -1/2 binary64) eps) x #s(literal 1 binary64)))
(fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) (fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64))) #s(literal 1 binary64))
(fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps #s(literal 1 binary64)))
(fma.f64 #s(literal -1/6 binary64) (*.f64 eps eps) (fma.f64 (*.f64 #s(literal -1/2 binary64) eps) x #s(literal 1 binary64)))
(fma.f64 eps (*.f64 #s(literal -1/2 binary64) x) (fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps #s(literal 1 binary64)))
(fma.f64 eps (*.f64 x #s(literal -1/2 binary64)) (fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps #s(literal 1 binary64)))
(fma.f64 eps (*.f64 #s(literal -1/6 binary64) eps) (fma.f64 (*.f64 #s(literal -1/2 binary64) eps) x #s(literal 1 binary64)))
(fma.f64 x (*.f64 #s(literal -1/2 binary64) eps) (fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps #s(literal 1 binary64)))
(-.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) eps) x #s(literal 1 binary64)) (*.f64 #s(literal 1/6 binary64) (*.f64 eps eps)))
(-.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 eps eps)) #s(literal 1 binary64)))
(-.f64 (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64))) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 eps eps)) (*.f64 (*.f64 eps x) #s(literal -1/2 binary64))))
(+.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64))) (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)))
(+.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) eps) x #s(literal 1 binary64)) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)))
(+.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) (fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps #s(literal 1 binary64)))
(+.f64 (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64))) #s(literal 1 binary64))
(+.f64 (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) eps) x #s(literal 1 binary64)))
(+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64))))
#s(literal 1 binary64)
(*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64))) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64))))
(/.f64 (*.f64 #s(literal 2 binary64) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)))) #s(literal 2 binary64))
(neg.f64 (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 eps eps)) (*.f64 (*.f64 eps x) #s(literal -1/2 binary64))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) x) eps (neg.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 eps eps))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) x) eps (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)))
(fma.f64 (*.f64 #s(literal -1/6 binary64) eps) eps (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) x (neg.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 eps eps))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) x (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)))
(fma.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)) #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 eps eps) #s(literal -1/6 binary64) (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)))
(fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) (neg.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 eps eps))))
(fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64))))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 eps x) #s(literal -1/2 binary64))))
(fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (neg.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 eps eps))))
(fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)))
(fma.f64 #s(literal -1/6 binary64) (*.f64 eps eps) (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)))
(fma.f64 eps (*.f64 #s(literal -1/2 binary64) x) (neg.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 eps eps))))
(fma.f64 eps (*.f64 #s(literal -1/2 binary64) x) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)))
(fma.f64 eps (*.f64 x #s(literal -1/2 binary64)) (neg.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 eps eps))))
(fma.f64 eps (*.f64 x #s(literal -1/2 binary64)) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)))
(fma.f64 eps (*.f64 #s(literal -1/6 binary64) eps) (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)))
(fma.f64 x (*.f64 #s(literal -1/2 binary64) eps) (neg.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 eps eps))))
(fma.f64 x (*.f64 #s(literal -1/2 binary64) eps) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)))
(-.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) (*.f64 #s(literal 1/6 binary64) (*.f64 eps eps)))
(-.f64 (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) eps)) x))
(-.f64 (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)) (*.f64 (neg.f64 (*.f64 eps x)) #s(literal -1/2 binary64)))
(-.f64 (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 eps x)))
(-.f64 (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)) (neg.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64))))
(+.f64 (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 eps x) #s(literal -1/2 binary64))))
(+.f64 (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)) #s(literal 1 binary64)))
(+.f64 (*.f64 (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 eps x) #s(literal -1/2 binary64))) (*.f64 #s(literal 1 binary64) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64))))
(+.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) (neg.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 eps eps))))
(+.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)))
(+.f64 (*.f64 (*.f64 eps eps) #s(literal -1/6 binary64)) (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)))
(*.f64 eps x)
(*.f64 x eps)
(*.f64 (*.f64 #s(literal -1/6 binary64) eps) eps)
(*.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 (fabs.f64 eps) (fabs.f64 eps))
(*.f64 (neg.f64 eps) (neg.f64 eps))
(*.f64 eps eps)
(pow.f64 eps #s(literal 2 binary64))
(fabs.f64 (*.f64 eps eps))
#s(literal 2 binary64)
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x eps)))
#s(approx (* eps (cos x)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x eps))
(neg.f64 (-.f64 (*.f64 (*.f64 (neg.f64 x) x) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)))) eps))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x eps)
(fma.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) eps (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x eps))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) (*.f64 x x) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x eps))
(fma.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x eps))
(fma.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) (*.f64 x x) eps)
(fma.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/2 binary64) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x eps))
(fma.f64 (*.f64 x x) (*.f64 #s(literal -1/2 binary64) eps) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x eps))
(fma.f64 (*.f64 x x) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) eps)
(fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 x x) eps) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x eps))
(fma.f64 eps (*.f64 #s(literal -1/2 binary64) (*.f64 x x)) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x eps))
(fma.f64 x (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)))) eps)
(fma.f64 x (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x eps))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x) (neg.f64 eps))
(-.f64 eps (*.f64 (*.f64 (neg.f64 x) x) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)))))
(+.f64 (+.f64 eps (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x)) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x))
(+.f64 (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x) (fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x eps))
(+.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x) eps)
(+.f64 eps (*.f64 (neg.f64 (*.f64 (neg.f64 x) x)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)))))
(+.f64 eps (neg.f64 (*.f64 (*.f64 (neg.f64 x) x) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))))))
(+.f64 eps (*.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x))
(*.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x)
(*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) (*.f64 x x))
(*.f64 (*.f64 x x) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))))
(*.f64 x (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)))))
(fma.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x))
(fma.f64 (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) eps)) #s(literal 1/24 binary64) (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x))
(fma.f64 (*.f64 (*.f64 x x) #s(literal -1/2 binary64)) eps (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 (*.f64 x x) eps) (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x))
(fma.f64 (*.f64 #s(literal 1/24 binary64) eps) (*.f64 (*.f64 x x) (*.f64 x x)) (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) (*.f64 x x) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x))
(fma.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x))
(fma.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) (*.f64 x x) (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x))
(fma.f64 (*.f64 (*.f64 x x) eps) (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x))
(fma.f64 (*.f64 (*.f64 x x) eps) #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x))
(fma.f64 (*.f64 x x) (*.f64 #s(literal -1/2 binary64) eps) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x))
(fma.f64 (*.f64 x x) (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 x x) eps) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x))
(fma.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 (*.f64 x x) eps) (*.f64 x x)) (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x))
(fma.f64 eps (*.f64 #s(literal -1/2 binary64) (*.f64 x x)) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x))
(fma.f64 x (*.f64 x (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x))
(fma.f64 x (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x))
(-.f64 (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x) (*.f64 (*.f64 (neg.f64 x) x) (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))))
(-.f64 (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x) (*.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (*.f64 x x) eps)) (*.f64 x x)))
(-.f64 (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x) (neg.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x)))
(+.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x) (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x))
(+.f64 (*.f64 (*.f64 (*.f64 eps x) #s(literal -1/2 binary64)) x) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) x) x))
(*.f64 (neg.f64 x) (neg.f64 x))
(*.f64 (fabs.f64 x) (fabs.f64 x))
(*.f64 x x)
(pow.f64 x #s(literal 2 binary64))
(fabs.f64 (*.f64 x x))
(neg.f64 (-.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (*.f64 x x) eps)) (*.f64 #s(literal -1/2 binary64) eps)))
(fma.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) eps) x) x (*.f64 #s(literal -1/2 binary64) eps))
(fma.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) eps (*.f64 #s(literal -1/2 binary64) eps))
(fma.f64 (*.f64 #s(literal 1/24 binary64) eps) (*.f64 x x) (*.f64 #s(literal -1/2 binary64) eps))
(fma.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64) (*.f64 #s(literal -1/2 binary64) eps))
(fma.f64 (*.f64 x x) (*.f64 #s(literal 1/24 binary64) eps) (*.f64 #s(literal -1/2 binary64) eps))
(fma.f64 #s(literal -1/2 binary64) eps (neg.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (*.f64 x x) eps))))
(fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)))
(fma.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 x x) eps) (*.f64 #s(literal -1/2 binary64) eps))
(fma.f64 eps (*.f64 (*.f64 x x) #s(literal 1/24 binary64)) (*.f64 #s(literal -1/2 binary64) eps))
(fma.f64 eps #s(literal -1/2 binary64) (neg.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (*.f64 x x) eps))))
(fma.f64 eps #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)))
(-.f64 (*.f64 #s(literal -1/2 binary64) eps) (*.f64 #s(literal -1/24 binary64) (*.f64 (*.f64 x x) eps)))
(-.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) (*.f64 #s(literal 1/2 binary64) eps))
(-.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) (*.f64 (neg.f64 eps) #s(literal -1/2 binary64)))
(-.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) (neg.f64 (*.f64 #s(literal -1/2 binary64) eps)))
(+.f64 (*.f64 #s(literal -1/2 binary64) eps) (neg.f64 (*.f64 #s(literal -1/24 binary64) (*.f64 (*.f64 x x) eps))))
(+.f64 (*.f64 #s(literal -1/2 binary64) eps) (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)))
(+.f64 (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64)) (*.f64 #s(literal -1/2 binary64) eps))
(*.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) eps) x) x)
(*.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) eps)
(*.f64 (*.f64 #s(literal 1/24 binary64) eps) (*.f64 x x))
(*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))
(*.f64 (*.f64 x x) (*.f64 #s(literal 1/24 binary64) eps))
(*.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 x x) eps))
(*.f64 eps (*.f64 (*.f64 x x) #s(literal 1/24 binary64)))
(*.f64 (*.f64 x x) eps)
(*.f64 (*.f64 eps x) x)
(*.f64 eps (*.f64 x x))
(*.f64 x (*.f64 eps x))
(*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))) (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))))
(*.f64 (*.f64 #s(literal 2 binary64) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64)))) (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 x (PI.f64))) #s(literal 1/2 binary64))))
(*.f64 (*.f64 (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 x (PI.f64))) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64)))) #s(literal 2 binary64))
(*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))) #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)) (+.f64 eps x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)) (+.f64 eps x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (-.f64 x (PI.f64)) (+.f64 eps x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (-.f64 x (PI.f64)) (+.f64 eps x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) (+.f64 (-.f64 (PI.f64) x) (PI.f64))) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps x) (+.f64 (-.f64 (PI.f64) x) (PI.f64))) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 (PI.f64) x) (+.f64 eps x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 (PI.f64) x) (+.f64 eps x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (neg.f64 x) (+.f64 eps x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (neg.f64 x) (+.f64 eps x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) (+.f64 (PI.f64) x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps x) (+.f64 (PI.f64) x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 x (PI.f64))) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))))
(neg.f64 (-.f64 (sin.f64 x) (sin.f64 (+.f64 eps x))))
(fma.f64 (cos.f64 eps) (sin.f64 x) (fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))))
(fma.f64 (cos.f64 eps) (sin.f64 x) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
(fma.f64 (cos.f64 eps) (sin.f64 x) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (neg.f64 (neg.f64 (sin.f64 x)))))
(fma.f64 (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 x (PI.f64))) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 x (PI.f64))) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64)))))
(fma.f64 (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64))) (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 x (PI.f64))) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 x (PI.f64))) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64)))))
(fma.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))))
(fma.f64 (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))))
(fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))))
(fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
(fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (neg.f64 (neg.f64 (sin.f64 x)))))
(-.f64 (sin.f64 (+.f64 eps x)) (neg.f64 (neg.f64 (sin.f64 x))))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(+.f64 (-.f64 (sin.f64 (+.f64 eps x)) (*.f64 #s(literal 0 binary64) (cos.f64 x))) (*.f64 (sin.f64 x) #s(literal -1 binary64)))
(+.f64 (neg.f64 (sin.f64 x)) (sin.f64 (+.f64 eps x)))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (neg.f64 (neg.f64 (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 x (PI.f64))) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 x (PI.f64))) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) (-.f64 (PI.f64) x)) #s(literal 1/2 binary64)))))
(+.f64 (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 (*.f64 (+.f64 (+.f64 eps x) x) #s(literal 1/2 binary64))) (sin.f64 (*.f64 (-.f64 (+.f64 eps x) x) #s(literal 1/2 binary64)))))
(+.f64 (sin.f64 (+.f64 eps x)) (neg.f64 (sin.f64 x)))
(neg.f64 (sin.f64 (-.f64 (neg.f64 eps) x)))
(sin.f64 (+.f64 eps x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 eps) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 (neg.f64 (neg.f64 eps)))))
(fma.f64 (cos.f64 eps) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (cos.f64 x) (sin.f64 (neg.f64 (neg.f64 eps)))))
(fma.f64 (sin.f64 x) (cos.f64 eps) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 eps) (neg.f64 (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (neg.f64 (cos.f64 x)) (sin.f64 eps)))
(-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (neg.f64 (*.f64 (sin.f64 eps) (cos.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (cos.f64 x) (neg.f64 (sin.f64 eps))))
(+.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (cos.f64 x) (sin.f64 (neg.f64 (neg.f64 eps)))))
(+.f64 (*.f64 (cos.f64 eps) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x)))
(neg.f64 (-.f64 (neg.f64 eps) x))
(-.f64 eps (neg.f64 x))
(-.f64 x (neg.f64 eps))
(+.f64 eps x)
(+.f64 x (neg.f64 (neg.f64 eps)))
(+.f64 x eps)
(neg.f64 (neg.f64 (sin.f64 x)))
(sin.f64 (neg.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64))))
(sin.f64 (neg.f64 (+.f64 (PI.f64) x)))
(sin.f64 (+.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)) (PI.f64)))
(sin.f64 (+.f64 (-.f64 x (PI.f64)) (PI.f64)))
(sin.f64 (+.f64 (+.f64 (PI.f64) x) (PI.f64)))
(sin.f64 (neg.f64 (neg.f64 x)))
(sin.f64 (-.f64 (PI.f64) x))
(fma.f64 (neg.f64 (sin.f64 x)) #s(literal -1 binary64) (*.f64 #s(literal 0 binary64) (cos.f64 x)))
(fma.f64 #s(literal 0 binary64) (cos.f64 x) (*.f64 #s(literal 1 binary64) (sin.f64 x)))
(fma.f64 #s(literal 0 binary64) (cos.f64 x) (neg.f64 (*.f64 (sin.f64 x) #s(literal -1 binary64))))
(fma.f64 #s(literal 0 binary64) (cos.f64 x) (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x))))
(fma.f64 (cos.f64 x) #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (sin.f64 x)))
(fma.f64 (cos.f64 x) #s(literal 0 binary64) (neg.f64 (*.f64 (sin.f64 x) #s(literal -1 binary64))))
(fma.f64 (cos.f64 x) #s(literal 0 binary64) (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x))))
(-.f64 (*.f64 #s(literal 0 binary64) (cos.f64 x)) (*.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 (sin.f64 x)))))
(-.f64 (*.f64 #s(literal 0 binary64) (cos.f64 x)) (*.f64 (sin.f64 x) #s(literal -1 binary64)))
(cos.f64 (+.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (-.f64 x (PI.f64)) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (+.f64 (PI.f64) x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (+.f64 (-.f64 (PI.f64) x) (*.f64 (PI.f64) #s(literal 1/2 binary64))) (PI.f64)))
(cos.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))
(cos.f64 (+.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x) (PI.f64)))
(+.f64 (*.f64 (neg.f64 (sin.f64 x)) #s(literal -1 binary64)) (*.f64 #s(literal 0 binary64) (cos.f64 x)))
(+.f64 (*.f64 #s(literal 0 binary64) (cos.f64 x)) (*.f64 #s(literal 1 binary64) (sin.f64 x)))
(+.f64 (*.f64 #s(literal 0 binary64) (cos.f64 x)) (neg.f64 (*.f64 (sin.f64 x) #s(literal -1 binary64))))
(+.f64 (*.f64 #s(literal 0 binary64) (cos.f64 x)) (*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 x))))
(neg.f64 (-.f64 x (PI.f64)))
(-.f64 (PI.f64) (neg.f64 (neg.f64 x)))
(-.f64 (PI.f64) x)
(+.f64 (neg.f64 x) (PI.f64))
(+.f64 (PI.f64) (neg.f64 x))
(PI.f64)

eval78.0ms (1.1%)

Memory
14.5MiB live, 68.8MiB allocated; 7ms collecting garbage
Compiler

Compiled 6 581 to 2 687 computations (59.2% saved)

prune69.0ms (1%)

Memory
-3.7MiB live, 43.0MiB allocated; 3ms collecting garbage
Pruning

26 alts after pruning (20 fresh and 6 done)

PrunedKeptTotal
New5274531
Fresh21618
Picked235
Done033
Total53126557
Accuracy
100.0%
Counts
557 → 26
Alt Table
Click to see full alt table
StatusAccuracyProgram
3.4%
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64))))
3.4%
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (PI.f64) x)))
61.1%
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
60.3%
(-.f64 (sin.f64 #s(approx (+ x eps) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 eps x))))) (sin.f64 x))
99.9%
(*.f64 (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))) #s(literal 2 binary64)) (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))))
100.0%
#s(approx (- (sin (+ x eps)) (sin x)) (fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))))
99.8%
#s(approx (- (sin (+ x eps)) (sin x)) (fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps #s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) #s(literal -1/6 binary64)) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))))
99.7%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)) eps))
99.2%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps (cos.f64 x)) eps))
100.0%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps))
99.8%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 eps #s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) #s(literal -1/6 binary64)) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps #s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 #s(literal -1/6 binary64) eps)) (cos.f64 x)) eps))
98.5%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))) eps))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x #s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) #s(literal -1/2 binary64)))))))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) #s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 eps (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/6 binary64)))))))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) #s(approx (* eps (sin x)) (*.f64 eps x))))))
99.2%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) #s(approx (* -1/2 (* eps (sin x))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
99.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
98.5%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) #s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps))))))))
98.8%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/2 binary64) x)))))))
98.3%
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) #s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) eps)))))))
98.5%
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64))))))
98.5%
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
99.0%
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x eps)))
Compiler

Compiled 1 024 to 796 computations (22.3% saved)

regimes61.0ms (0.9%)

Memory
22.9MiB live, 69.3MiB allocated; 4ms collecting garbage
Counts
42 → 1
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) #s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/2 binary64) x)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) #s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps))))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x eps)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps #s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 #s(literal -1/6 binary64) eps)) (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) #s(approx (* eps (sin x)) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (*.f64 #s(literal -1/6 binary64) eps))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x #s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) #s(literal -1/2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) #s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 eps (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/6 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) #s(approx (* -1/2 (* eps (sin x))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))))))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (PI.f64) x)))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (+.f64 (neg.f64 x) (PI.f64))))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)) eps))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (neg.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)))))
(-.f64 (sin.f64 #s(approx (+ x eps) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 eps x))))) (sin.f64 x))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 eps #s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) #s(literal -1/6 binary64)) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps #s(approx (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))) #s(literal -1/6 binary64))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps #s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) #s(literal -1/6 binary64)) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))))
(*.f64 (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))) #s(literal 2 binary64)) (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (/.f64 (cos.f64 x) (pow.f64 eps #s(literal 2 binary64))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 eps (sin.f64 x))))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))))
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) (fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps (fma.f64 (cos.f64 x) #s(literal -1/6 binary64) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/24 binary64))) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))))
Calls

3 calls:

39.0ms
x
9.0ms
eps
9.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Results
AccuracySegmentsBranch
100.0%1(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
100.0%1x
100.0%1eps
Compiler

Compiled 8 to 10 computations (-25% saved)

regimes39.0ms (0.6%)

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

3 calls:

15.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
13.0ms
eps
9.0ms
x
Results
AccuracySegmentsBranch
100.0%1(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
100.0%1x
100.0%1eps
Compiler

Compiled 8 to 10 computations (-25% saved)

regimes31.0ms (0.4%)

Memory
24.7MiB live, 70.0MiB allocated; 6ms collecting garbage
Counts
39 → 1
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) #s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/2 binary64) x)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) #s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps))))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x eps)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps #s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 #s(literal -1/6 binary64) eps)) (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) #s(approx (* eps (sin x)) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (*.f64 #s(literal -1/6 binary64) eps))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x #s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) #s(literal -1/2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) #s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 eps (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/6 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) #s(approx (* -1/2 (* eps (sin x))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))))))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (PI.f64) x)))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (+.f64 (neg.f64 x) (PI.f64))))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)) eps))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (neg.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)))))
(-.f64 (sin.f64 #s(approx (+ x eps) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 eps x))))) (sin.f64 x))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 eps #s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) #s(literal -1/6 binary64)) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps #s(approx (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))) #s(literal -1/6 binary64))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps #s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) #s(literal -1/6 binary64)) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))))
(*.f64 (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))) #s(literal 2 binary64)) (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 (sin.f64 x) #s(literal -1/2 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal -1/6 binary64))) (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 #s(literal -1/6 binary64) (*.f64 eps (cos.f64 x))))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x))))))) (*.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 #s(literal -1/2 binary64) (/.f64 (sin.f64 x) eps) (fma.f64 #s(literal -1/6 binary64) (cos.f64 x) (/.f64 (cos.f64 x) (pow.f64 eps #s(literal 2 binary64))))))))
Outputs
(*.f64 (*.f64 (sin.f64 (*.f64 #s(literal 1/2 binary64) (-.f64 eps #s(literal 0 binary64)))) #s(literal 2 binary64)) (cos.f64 (*.f64 (fma.f64 #s(literal 2 binary64) x eps) #s(literal -1/2 binary64))))
Calls

3 calls:

12.0ms
x
9.0ms
eps
9.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Results
AccuracySegmentsBranch
99.9%1(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
99.9%1x
99.9%1eps
Compiler

Compiled 8 to 10 computations (-25% saved)

regimes33.0ms (0.5%)

Memory
-27.0MiB live, 63.1MiB allocated; 14ms collecting garbage
Counts
35 → 1
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) #s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/2 binary64) x)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) #s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps))))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x eps)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps #s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 #s(literal -1/6 binary64) eps)) (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) #s(approx (* eps (sin x)) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (*.f64 #s(literal -1/6 binary64) eps))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x #s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) #s(literal -1/2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) #s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 eps (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/6 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) #s(approx (* -1/2 (* eps (sin x))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))))))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (PI.f64) x)))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (+.f64 (neg.f64 x) (PI.f64))))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)) eps))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (neg.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)))))
(-.f64 (sin.f64 #s(approx (+ x eps) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 eps x))))) (sin.f64 x))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 eps #s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) #s(literal -1/6 binary64)) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps #s(approx (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))) #s(literal -1/6 binary64))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps #s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) #s(literal -1/6 binary64)) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))))
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) (fma.f64 (cos.f64 x) eps (*.f64 (fma.f64 eps #s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) #s(literal -1/6 binary64)) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (*.f64 eps eps))))
Calls

3 calls:

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

Compiled 8 to 10 computations (-25% saved)

regimes33.0ms (0.5%)

Memory
16.4MiB live, 62.7MiB allocated; 16ms collecting garbage
Counts
34 → 1
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) #s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/2 binary64) x)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) #s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps))))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x eps)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps #s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 #s(literal -1/6 binary64) eps)) (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) #s(approx (* eps (sin x)) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (*.f64 #s(literal -1/6 binary64) eps))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x #s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) #s(literal -1/2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) #s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 eps (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/6 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) #s(approx (* -1/2 (* eps (sin x))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))))))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (PI.f64) x)))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (+.f64 (neg.f64 x) (PI.f64))))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)) eps))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (neg.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)))))
(-.f64 (sin.f64 #s(approx (+ x eps) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 eps x))))) (sin.f64 x))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 eps #s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) #s(literal -1/6 binary64)) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) (sin.f64 x) (*.f64 eps #s(approx (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))) #s(literal -1/6 binary64))))))))
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps (fma.f64 eps #s(approx (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24)) #s(literal -1/6 binary64)) (*.f64 (sin.f64 x) #s(literal -1/2 binary64))) (cos.f64 x)) eps))
Calls

3 calls:

16.0ms
x
8.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
8.0ms
eps
Results
AccuracySegmentsBranch
99.8%1(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
99.8%1x
99.8%1eps
Compiler

Compiled 8 to 10 computations (-25% saved)

regimes25.0ms (0.4%)

Memory
18.2MiB live, 64.7MiB allocated; 3ms collecting garbage
Counts
32 → 1
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) #s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/2 binary64) x)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) #s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps))))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x eps)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps #s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 #s(literal -1/6 binary64) eps)) (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) #s(approx (* eps (sin x)) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (*.f64 #s(literal -1/6 binary64) eps))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x #s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) #s(literal -1/2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) #s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 eps (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/6 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) #s(approx (* -1/2 (* eps (sin x))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))))))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (PI.f64) x)))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (+.f64 (neg.f64 x) (PI.f64))))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)) eps))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (neg.f64 (+.f64 (-.f64 (PI.f64) x) (PI.f64)))))
(-.f64 (sin.f64 #s(approx (+ x eps) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 eps x))))) (sin.f64 x))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps (sin.f64 x))))))
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal -1/2 binary64) (cos.f64 x)) eps))
Calls

3 calls:

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

Compiled 8 to 10 computations (-25% saved)

regimes23.0ms (0.3%)

Memory
-29.6MiB live, 64.1MiB allocated; 3ms collecting garbage
Counts
28 → 1
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) #s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/2 binary64) x)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) #s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps))))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x eps)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps #s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 #s(literal -1/6 binary64) eps)) (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) #s(approx (* eps (sin x)) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (*.f64 #s(literal -1/6 binary64) eps))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x #s(approx (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2) #s(literal -1/2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 (fma.f64 (*.f64 (+.f64 eps x) #s(literal 1/12 binary64)) x #s(literal -1/2 binary64)) x (*.f64 #s(literal -1/6 binary64) eps))) eps (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/6 binary64) eps (*.f64 x (-.f64 (*.f64 x (fma.f64 #s(literal 1/12 binary64) eps (*.f64 #s(literal 1/12 binary64) x))) #s(literal 1/2 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) #s(approx (+ (* -1/6 eps) (* x (- (* x (+ (* 1/12 eps) (* 1/12 x))) 1/2))) (*.f64 eps (-.f64 (*.f64 #s(literal 1/12 binary64) (pow.f64 x #s(literal 2 binary64))) #s(literal 1/6 binary64)))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) #s(approx (* -1/2 (* eps (sin x))) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/12 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64))))))))))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (PI.f64) x)))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (+.f64 (neg.f64 x) (PI.f64))))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 (-.f64 (-.f64 x (PI.f64)) (PI.f64))))
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))) (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps)))))))
Calls

3 calls:

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

Compiled 8 to 10 computations (-25% saved)

regimes22.0ms (0.3%)

Memory
-13.3MiB live, 46.7MiB allocated; 13ms collecting garbage
Counts
18 → 1
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) #s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/2 binary64) x)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) #s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps))))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x eps)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps #s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 #s(literal -1/6 binary64) eps)) (cos.f64 x)) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) #s(approx (* eps (sin x)) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps #s(approx (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))) (*.f64 #s(literal -1/6 binary64) eps))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (+.f64 eps (*.f64 (pow.f64 x #s(literal 2 binary64)) (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal 1/24 binary64) (*.f64 eps (pow.f64 x #s(literal 2 binary64)))))))))
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 #s(literal -1/2 binary64) #s(approx (* eps (sin x)) (*.f64 eps x))))))
Calls

3 calls:

13.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
4.0ms
eps
4.0ms
x
Results
AccuracySegmentsBranch
99.3%1(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
99.3%1x
99.3%1eps
Compiler

Compiled 8 to 10 computations (-25% saved)

regimes13.0ms (0.2%)

Memory
-1.5MiB live, 45.9MiB allocated; 2ms collecting garbage
Counts
15 → 1
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) #s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/2 binary64) x)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) #s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps))))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x eps)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (+.f64 (neg.f64 x) (*.f64 (PI.f64) #s(literal 1/2 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps #s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 #s(literal -1/6 binary64) eps)) (cos.f64 x)) eps))
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 (fma.f64 eps #s(approx (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (*.f64 #s(literal -1/6 binary64) eps)) (cos.f64 x)) eps))
Calls

3 calls:

5.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
4.0ms
eps
4.0ms
x
Results
AccuracySegmentsBranch
99.3%1(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
99.3%1x
99.3%1eps
Compiler

Compiled 8 to 10 computations (-25% saved)

regimes11.0ms (0.2%)

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

3 calls:

4.0ms
eps
4.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
4.0ms
x
Results
AccuracySegmentsBranch
99.3%1(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
99.3%1x
99.3%1eps
Compiler

Compiled 8 to 10 computations (-25% saved)

regimes12.0ms (0.2%)

Memory
-9.6MiB live, 36.2MiB allocated; 1ms collecting garbage
Counts
13 → 1
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) #s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/2 binary64) x)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) #s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps))))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x eps)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (sin.f64 (fma.f64 (PI.f64) #s(literal 1/2 binary64) x))))
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps (cos.f64 x)))
Calls

3 calls:

3.0ms
eps
3.0ms
x
3.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Results
AccuracySegmentsBranch
99.3%1(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
99.3%1x
99.3%1eps
Compiler

Compiled 8 to 10 computations (-25% saved)

regimes16.0ms (0.2%)

Memory
-8.1MiB live, 33.8MiB allocated; 7ms collecting garbage
Counts
11 → 1
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) #s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) eps)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 x (fma.f64 #s(literal -1/2 binary64) eps (*.f64 #s(literal -1/2 binary64) x)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) #s(approx (+ (* -1/2 (* eps x)) (* -1/6 (pow eps 2))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (*.f64 #s(literal -1/6 binary64) eps))))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (+ (* (cos x) eps) (* (+ (* eps (+ (* (cos x) -1/6) (* (* (sin x) eps) 1/24))) (* (sin x) -1/2)) (* eps eps))) (+.f64 eps (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 3 binary64))))))
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x eps)))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* eps (+ (* -1/6 (cos x)) (* 1/24 (* eps (sin x)))))))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64)))))))
#s(approx (- (sin (+ x eps)) (sin x)) (sin.f64 eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* eps (+ (* -1/2 (sin x)) (* -1/6 (* eps (cos x)))))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (*.f64 eps x) (*.f64 #s(literal -1/6 binary64) (pow.f64 eps #s(literal 2 binary64))))))))
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (cos x)) (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) eps (*.f64 (*.f64 (*.f64 x x) eps) #s(literal 1/24 binary64))) x) x eps)))
Calls

3 calls:

9.0ms
x
3.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
3.0ms
eps
Results
AccuracySegmentsBranch
99.0%1(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
99.0%1x
99.0%1eps
Compiler

Compiled 8 to 10 computations (-25% saved)

regimes7.0ms (0.1%)

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

3 calls:

2.0ms
eps
2.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
2.0ms
x
Results
AccuracySegmentsBranch
98.8%1(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
98.8%1x
98.8%1eps
Compiler

Compiled 8 to 10 computations (-25% saved)

regimes17.0ms (0.2%)

Memory
-29.3MiB live, 21.4MiB allocated; 13ms collecting garbage
Accuracy

Total -0.1b remaining (-15.1%)

Threshold costs -0.1b (-15.1%)

Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (fma.f64 (*.f64 eps x) #s(literal -1/2 binary64) #s(literal 1 binary64))) eps))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (*.f64 eps x))))))
#s(approx (- (sin (+ x eps)) (sin x)) (*.f64 eps #s(approx (+ (cos x) (* -1/2 (* eps (sin x)))) #s(approx (+ 1 (* -1/2 (* eps x))) (*.f64 eps (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal 1 binary64) eps)))))))
Outputs
#s(approx (- (sin (+ x eps)) (sin x)) #s(approx (* eps (+ (cos x) (* -1/2 (* eps (sin x))))) eps))
Calls

3 calls:

13.0ms
eps
2.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
2.0ms
x
Results
AccuracySegmentsBranch
98.5%1(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
98.5%1x
98.5%1eps
Compiler

Compiled 8 to 10 computations (-25% saved)

derivations506.0ms (7.1%)

Memory
-38.7MiB live, 203.5MiB allocated; 677ms collecting garbage
Stop Event
fuel
Compiler

Compiled 172 to 108 computations (37.2% saved)

preprocess127.0ms (1.8%)

Memory
-4.1MiB live, 195.6MiB allocated; 38ms collecting garbage
Compiler

Compiled 215 to 147 computations (31.6% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...