2cos (problem 3.3.5)

Time bar (total: 12.0s)

start0.0ms (0%)

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

analyze87.0ms (0.7%)

Memory
-10.5MiB live, 183.7MiB allocated; 22ms 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)

sample9.0s (75.3%)

Memory
60.6MiB live, 7 978.8MiB allocated; 2.7s collecting garbage
Samples
3.6s26 634×0invalid
2.9s5 715×2valid
700.0ms2 480×1valid
8.0ms61×0valid
Precisions
Click to see histograms. Total time spent on operations: 5.3s
ival-cos: 2.3s (44.3% of total)
const: 625.0ms (11.8% of total)
adjust: 510.0ms (9.6% of total)
ival-add: 353.0ms (6.7% of total)
ival-fabs: 304.0ms (5.8% of total)
ival-sub: 289.0ms (5.5% of total)
ival-<=: 278.0ms (5.3% of total)
ival-mult: 247.0ms (4.7% of total)
ival-<: 162.0ms (3.1% of total)
ival-and: 113.0ms (2.1% of total)
exact: 49.0ms (0.9% of total)
ival-assert: 13.0ms (0.2% of total)
Bogosity

explain199.0ms (1.7%)

Memory
-4.6MiB live, 192.9MiB allocated; 10ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1430-0-(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
10-0-(cos.f64 (+.f64 x eps))
00-0-eps
00-0-(+.f64 x eps)
00-0-(cos.f64 x)
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
-.f64(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))cancellation1430
cos.f64(cos.f64 (+.f64 x eps))sensitivity10
Confusion
Predicted +Predicted -
+1440
-0112
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+14400
-00112
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
0112
1144
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
132.0ms362×2valid
21.0ms148×1valid
0.0ms0valid
Compiler

Compiled 47 to 22 computations (53.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 127.0ms
ival-cos: 91.0ms (71.4% of total)
adjust: 25.0ms (19.6% of total)
ival-sub: 6.0ms (4.7% of total)
ival-add: 4.0ms (3.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess13.0ms (0.1%)

Memory
17.7MiB live, 17.7MiB allocated; 0ms collecting garbage
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01841
14641
28641
311641
411841
067
0107
1227
2407
3647
4717
0717
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Outputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
Compiler

Compiled 7 to 6 computations (14.3% saved)

eval0.0ms (0%)

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

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

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

Compiled 7 to 6 computations (14.3% saved)

simplify0.0ms (0%)

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

series7.0ms (0.1%)

Memory
-44.0MiB live, 6.0MiB allocated; 4ms collecting garbage
Counts
6 → 33
Calls
Call 1
Inputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
x
eps
(cos.f64 x)
Outputs
(- (cos eps) 1)
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
(cos eps)
(+ (cos eps) (* -1 (* x (sin eps))))
(+ (cos eps) (* x (- (* -1/2 (* x (cos eps))) (sin eps))))
(+ (cos eps) (* x (- (* x (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps))))) (sin eps))))
eps
(+ eps x)
x
1
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(- (cos (+ eps x)) (cos x))
(cos (+ eps x))
(* x (+ 1 (/ eps x)))
(cos x)
(- (cos (- eps (* -1 x))) (cos x))
(cos (- eps (* -1 x)))
(* -1 (* x (- (* -1 (/ eps x)) 1)))
(* -1 (* eps (sin x)))
(* eps (- (* -1/2 (* eps (cos x))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))
(+ (cos x) (* -1 (* eps (sin x))))
(+ (cos x) (* eps (- (* -1/2 (* eps (cos x))) (sin x))))
(+ (cos x) (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))
(* eps (+ 1 (/ x eps)))
(- (cos (- x (* -1 eps))) (cos x))
(cos (- x (* -1 eps)))
(* -1 (* eps (- (* -1 (/ x eps)) 1)))
Calls

6 calls:

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

simplify116.0ms (1%)

Memory
17.8MiB live, 111.0MiB allocated; 4ms collecting garbage
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0105296
1308293
2779293
32454292
46244292
08035272
Stop Event
iter limit
node limit
Counts
33 → 31
Calls
Call 1
Inputs
(- (cos eps) 1)
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
(cos eps)
(+ (cos eps) (* -1 (* x (sin eps))))
(+ (cos eps) (* x (- (* -1/2 (* x (cos eps))) (sin eps))))
(+ (cos eps) (* x (- (* x (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps))))) (sin eps))))
eps
(+ eps x)
x
1
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(- (cos (+ eps x)) (cos x))
(cos (+ eps x))
(* x (+ 1 (/ eps x)))
(cos x)
(- (cos (- eps (* -1 x))) (cos x))
(cos (- eps (* -1 x)))
(* -1 (* x (- (* -1 (/ eps x)) 1)))
(* -1 (* eps (sin x)))
(* eps (- (* -1/2 (* eps (cos x))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))
(+ (cos x) (* -1 (* eps (sin x))))
(+ (cos x) (* eps (- (* -1/2 (* eps (cos x))) (sin x))))
(+ (cos x) (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))
(* eps (+ 1 (/ x eps)))
(- (cos (- x (* -1 eps))) (cos x))
(cos (- x (* -1 eps)))
(* -1 (* eps (- (* -1 (/ x eps)) 1)))
Outputs
(- (cos eps) 1)
(-.f64 (cos.f64 eps) #s(literal 1 binary64))
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)))
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
(-.f64 (cos.f64 eps) (fma.f64 (fma.f64 x (fma.f64 #s(literal 1/2 binary64) (cos.f64 eps) #s(literal -1/2 binary64)) (sin.f64 eps)) x #s(literal 1 binary64)))
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
(fma.f64 (fma.f64 (sin.f64 eps) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1 binary64)) (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 eps) #s(literal 1/2 binary64)) x)) x (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(cos eps)
(cos.f64 eps)
(+ (cos eps) (* -1 (* x (sin eps))))
(fma.f64 (neg.f64 x) (sin.f64 eps) (cos.f64 eps))
(+ (cos eps) (* x (- (* -1/2 (* x (cos eps))) (sin eps))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 eps)) x (sin.f64 eps)) (neg.f64 x) (cos.f64 eps))
(+ (cos eps) (* x (- (* x (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps))))) (sin eps))))
(fma.f64 (fma.f64 (sin.f64 eps) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1 binary64)) (*.f64 (*.f64 (cos.f64 eps) x) #s(literal -1/2 binary64))) x (cos.f64 eps))
eps
(+ eps x)
(+.f64 eps x)
x
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow x 2)))
(fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(fma.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/720 binary64) (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64))) (*.f64 x x) #s(literal 1 binary64))
(- (cos (+ eps x)) (cos x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(cos (+ eps x))
(cos.f64 (+.f64 eps x))
(* x (+ 1 (/ eps x)))
(+.f64 eps x)
(cos x)
(cos.f64 x)
(- (cos (- eps (* -1 x))) (cos x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(cos (- eps (* -1 x)))
(cos.f64 (+.f64 eps x))
(* -1 (* x (- (* -1 (/ eps x)) 1)))
(+.f64 eps x)
(* -1 (* eps (sin x)))
(*.f64 (neg.f64 eps) (sin.f64 x))
(* eps (- (* -1/2 (* eps (cos x))) (sin x)))
(*.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))
(*.f64 (fma.f64 (sin.f64 x) (fma.f64 (*.f64 eps eps) #s(literal 1/6 binary64) #s(literal -1 binary64)) (*.f64 (*.f64 (cos.f64 x) #s(literal -1/2 binary64)) eps)) eps)
(* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))
(*.f64 (-.f64 (*.f64 (fma.f64 (cos.f64 x) (fma.f64 eps (*.f64 #s(literal 1/24 binary64) eps) #s(literal -1/2 binary64)) (*.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64))) eps) (sin.f64 x)) eps)
(+ (cos x) (* -1 (* eps (sin x))))
(fma.f64 (neg.f64 (sin.f64 x)) eps (cos.f64 x))
(+ (cos x) (* eps (- (* -1/2 (* eps (cos x))) (sin x))))
(fma.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps) (cos.f64 x))
(+ (cos x) (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))
(fma.f64 (fma.f64 (sin.f64 x) (fma.f64 (*.f64 eps eps) #s(literal 1/6 binary64) #s(literal -1 binary64)) (*.f64 (*.f64 (cos.f64 x) #s(literal -1/2 binary64)) eps)) eps (cos.f64 x))
(* eps (+ 1 (/ x eps)))
(+.f64 eps x)
(- (cos (- x (* -1 eps))) (cos x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(cos (- x (* -1 eps)))
(cos.f64 (+.f64 eps x))
(* -1 (* eps (- (* -1 (/ x eps)) 1)))
(+.f64 eps x)

rewrite136.0ms (1.1%)

Memory
-13.5MiB live, 128.9MiB allocated; 9ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0618
01018
16218
261518
0813018
Stop Event
iter limit
node limit
iter limit
Counts
6 → 140
Calls
Call 1
Inputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
x
eps
(cos.f64 x)
Outputs
(*.f64 (/.f64 (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (/.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) (*.f64 (cos.f64 (/.f64 (+.f64 (neg.f64 (+.f64 eps x)) (neg.f64 x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (neg.f64 (+.f64 eps x)) (neg.f64 x)) #s(literal 2 binary64))))))
(*.f64 (/.f64 (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (/.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) (*.f64 (cos.f64 (/.f64 (+.f64 (neg.f64 (+.f64 eps x)) x) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (neg.f64 (+.f64 eps x)) x) #s(literal 2 binary64))))))
(*.f64 (/.f64 (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (/.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) (*.f64 (cos.f64 (/.f64 (+.f64 (+.f64 eps x) (neg.f64 x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps x) (neg.f64 x)) #s(literal 2 binary64))))))
(*.f64 (/.f64 (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (/.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) (*.f64 (cos.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64))))))
(*.f64 (/.f64 (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (/.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) #s(literal 2 binary64))))))
(*.f64 (*.f64 #s(literal -2 binary64) (sin.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64)))) (sin.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))))
(*.f64 (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64)))) #s(literal -2 binary64))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (neg.f64 x) (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (neg.f64 x) (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 eps (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) (+.f64 (neg.f64 x) (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 eps (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) (+.f64 (neg.f64 x) (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 eps (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 eps (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 (neg.f64 (+.f64 eps x))) (neg.f64 (neg.f64 x))) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (neg.f64 (neg.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 (neg.f64 (+.f64 eps x))) (neg.f64 x)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (neg.f64 (neg.f64 (+.f64 eps x))) (neg.f64 x)) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 (neg.f64 (+.f64 eps x))) x) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (neg.f64 (neg.f64 (+.f64 eps x))) x) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 (+.f64 eps x)) (neg.f64 (neg.f64 x))) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (neg.f64 (+.f64 eps x)) (neg.f64 (neg.f64 x))) #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))) (sin.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 eps x)) (neg.f64 x)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (neg.f64 (+.f64 eps x)) (neg.f64 x)) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (neg.f64 (+.f64 eps x)) x) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (neg.f64 (+.f64 eps x)) x) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 eps x) (neg.f64 x)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (+.f64 eps x) (neg.f64 x)) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))) (sin.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))))) (*.f64 (/.f64 (pow.f64 (cos.f64 x) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))) (+.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64))))) (*.f64 (/.f64 (pow.f64 (cos.f64 x) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))))) (+.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 2 binary64)) (*.f64 (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))) (fma.f64 (cos.f64 eps) (cos.f64 x) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (cos.f64 x) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (fma.f64 (/.f64 (pow.f64 (cos.f64 x) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (*.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (cos.f64 x) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))) (fma.f64 (/.f64 (pow.f64 (cos.f64 x) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))) (*.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64))))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 3 binary64)) (pow.f64 (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 2 binary64)) (fma.f64 (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)) (*.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (pow.f64 (cos.f64 x) #s(literal 2 binary64))))) (neg.f64 (neg.f64 (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (pow.f64 (cos.f64 x) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (*.f64 (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 x) #s(literal 2 binary64)))) (*.f64 (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))) (*.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64))) (pow.f64 (cos.f64 x) #s(literal 3 binary64)))) (*.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64))) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (pow.f64 (cos.f64 x) #s(literal 2 binary64)))) (neg.f64 (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (pow.f64 (cos.f64 x) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (pow.f64 (cos.f64 x) #s(literal 2 binary64))) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))))
(/.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (pow.f64 (cos.f64 x) #s(literal 3 binary64))) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64))))
(fma.f64 (/.f64 (neg.f64 (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (/.f64 (neg.f64 (cos.f64 (+.f64 eps x))) (*.f64 (cos.f64 (/.f64 (+.f64 (neg.f64 (+.f64 eps x)) (neg.f64 x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (neg.f64 (+.f64 eps x)) (neg.f64 x)) #s(literal 2 binary64))))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(fma.f64 (/.f64 (neg.f64 (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (/.f64 (neg.f64 (cos.f64 (+.f64 eps x))) (*.f64 (cos.f64 (/.f64 (+.f64 (neg.f64 (+.f64 eps x)) x) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (neg.f64 (+.f64 eps x)) x) #s(literal 2 binary64))))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(fma.f64 (/.f64 (neg.f64 (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (/.f64 (neg.f64 (cos.f64 (+.f64 eps x))) (*.f64 (cos.f64 (/.f64 (+.f64 (+.f64 eps x) (neg.f64 x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps x) (neg.f64 x)) #s(literal 2 binary64))))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(fma.f64 (/.f64 (neg.f64 (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (/.f64 (neg.f64 (cos.f64 (+.f64 eps x))) (*.f64 (cos.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64))))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(fma.f64 (/.f64 (neg.f64 (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (/.f64 (neg.f64 (cos.f64 (+.f64 eps x))) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) #s(literal 2 binary64))))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(fma.f64 (/.f64 (fabs.f64 (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (/.f64 (fabs.f64 (cos.f64 (+.f64 eps x))) (*.f64 (cos.f64 (/.f64 (+.f64 (neg.f64 (+.f64 eps x)) (neg.f64 x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (neg.f64 (+.f64 eps x)) (neg.f64 x)) #s(literal 2 binary64))))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(fma.f64 (/.f64 (fabs.f64 (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (/.f64 (fabs.f64 (cos.f64 (+.f64 eps x))) (*.f64 (cos.f64 (/.f64 (+.f64 (neg.f64 (+.f64 eps x)) x) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (neg.f64 (+.f64 eps x)) x) #s(literal 2 binary64))))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(fma.f64 (/.f64 (fabs.f64 (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (/.f64 (fabs.f64 (cos.f64 (+.f64 eps x))) (*.f64 (cos.f64 (/.f64 (+.f64 (+.f64 eps x) (neg.f64 x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps x) (neg.f64 x)) #s(literal 2 binary64))))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(fma.f64 (/.f64 (fabs.f64 (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (/.f64 (fabs.f64 (cos.f64 (+.f64 eps x))) (*.f64 (cos.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64))))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(fma.f64 (/.f64 (fabs.f64 (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (/.f64 (fabs.f64 (cos.f64 (+.f64 eps x))) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) #s(literal 2 binary64))))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(fma.f64 (/.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 eps x)) (*.f64 (cos.f64 (/.f64 (+.f64 (neg.f64 (+.f64 eps x)) (neg.f64 x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (neg.f64 (+.f64 eps x)) (neg.f64 x)) #s(literal 2 binary64))))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(fma.f64 (/.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 eps x)) (*.f64 (cos.f64 (/.f64 (+.f64 (neg.f64 (+.f64 eps x)) x) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (neg.f64 (+.f64 eps x)) x) #s(literal 2 binary64))))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(fma.f64 (/.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 eps x)) (*.f64 (cos.f64 (/.f64 (+.f64 (+.f64 eps x) (neg.f64 x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps x) (neg.f64 x)) #s(literal 2 binary64))))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(fma.f64 (/.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 eps x)) (*.f64 (cos.f64 (/.f64 (+.f64 (+.f64 eps x) x) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps x) x) #s(literal 2 binary64))))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(fma.f64 (/.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 eps x)) (*.f64 (sin.f64 (/.f64 (+.f64 (+.f64 eps (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) #s(literal 2 binary64))) (cos.f64 (/.f64 (-.f64 (+.f64 eps (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)) #s(literal 2 binary64))))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(-.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(-.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (cos.f64 x) #s(literal 3 binary64)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(+.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))) (/.f64 (*.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 eps x)))))
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 (+.f64 eps x)) #s(literal 0 binary64)) (*.f64 (sin.f64 (+.f64 eps x)) #s(literal 0 binary64))) (*.f64 (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))) (-.f64 (*.f64 (sin.f64 (+.f64 eps x)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 2 binary64)) (*.f64 (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))) (cos.f64 (+.f64 (neg.f64 x) eps)))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 (+.f64 eps x)) #s(literal 0 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 (+.f64 eps x)) #s(literal 0 binary64)) (*.f64 (sin.f64 (+.f64 eps x)) #s(literal 0 binary64)) (-.f64 (*.f64 (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64))) (*.f64 (*.f64 (sin.f64 (+.f64 eps x)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (*.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))))))
(/.f64 (neg.f64 (*.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x)))) (neg.f64 (cos.f64 (-.f64 eps x))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 eps) (sin.f64 x)) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 eps) (sin.f64 x)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 eps) (sin.f64 x)))))))
(/.f64 (-.f64 (*.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 x) eps)) (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x))))) #s(literal 4 binary64))
(/.f64 (-.f64 (*.f64 (+.f64 (cos.f64 (+.f64 eps x)) (cos.f64 (-.f64 eps x))) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x))))) #s(literal 4 binary64))
(/.f64 (-.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 x) eps)) (cos.f64 (+.f64 eps x))) (-.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x)))) #s(literal 2 binary64))
(/.f64 (-.f64 (+.f64 (cos.f64 (+.f64 eps x)) (cos.f64 (-.f64 eps x))) (-.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x)))) #s(literal 2 binary64))
(/.f64 (*.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x))) (cos.f64 (-.f64 eps x)))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 eps) (sin.f64 x)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 eps) (sin.f64 x)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 eps) (sin.f64 x))))))
(fma.f64 (cos.f64 (/.f64 (*.f64 x x) (-.f64 x eps))) (cos.f64 (/.f64 (*.f64 eps eps) (-.f64 x eps))) (*.f64 (sin.f64 (/.f64 (*.f64 x x) (-.f64 x eps))) (sin.f64 (/.f64 (*.f64 eps eps) (-.f64 x eps)))))
(fma.f64 (neg.f64 (sin.f64 (+.f64 eps x))) #s(literal 0 binary64) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cos.f64 (+.f64 eps x)) (*.f64 #s(literal 0 binary64) (sin.f64 (+.f64 eps x))))
(fma.f64 (sin.f64 (+.f64 eps x)) #s(literal 0 binary64) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(fma.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)) (*.f64 (cos.f64 eps) (cos.f64 x)))
(fma.f64 (sin.f64 x) (cos.f64 (+.f64 eps (/.f64 (PI.f64) #s(literal 2 binary64)))) (*.f64 (cos.f64 eps) (cos.f64 x)))
(fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))
(fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))
(sin.f64 (+.f64 (neg.f64 (neg.f64 (+.f64 eps x))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (-.f64 (neg.f64 x) eps) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x) eps))
(sin.f64 (+.f64 eps (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x)))
(-.f64 (/.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 2 binary64)) (cos.f64 (-.f64 eps x))) (/.f64 (pow.f64 (*.f64 (sin.f64 eps) (sin.f64 x)) #s(literal 2 binary64)) (cos.f64 (-.f64 eps x))))
(-.f64 (/.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 eps) (sin.f64 x)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 eps) (sin.f64 x)))))) (/.f64 (pow.f64 (*.f64 (sin.f64 eps) (sin.f64 x)) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 eps) (sin.f64 x)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 eps) (sin.f64 x)))))))
(-.f64 (*.f64 (cos.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x)))) (cos.f64 (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))))) (*.f64 (sin.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x)))) (sin.f64 (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 (neg.f64 eps)) (neg.f64 (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 (neg.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 eps) (sin.f64 x)))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 (+.f64 eps x)))))
(cos.f64 (neg.f64 (-.f64 (neg.f64 x) eps)))
(cos.f64 (neg.f64 (neg.f64 (+.f64 eps x))))
(cos.f64 (-.f64 (neg.f64 x) eps))
(cos.f64 (neg.f64 (+.f64 eps x)))
(cos.f64 (+.f64 eps x))
(+.f64 (*.f64 (cos.f64 (/.f64 (*.f64 x x) (-.f64 x eps))) (cos.f64 (/.f64 (*.f64 eps eps) (-.f64 x eps)))) (*.f64 (sin.f64 (/.f64 (*.f64 x x) (-.f64 x eps))) (sin.f64 (/.f64 (*.f64 eps eps) (-.f64 x eps)))))
(+.f64 (*.f64 (neg.f64 (sin.f64 (+.f64 eps x))) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 eps x))) (*.f64 #s(literal 0 binary64) (sin.f64 (+.f64 eps x))))
(+.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (cos.f64 eps) (cos.f64 x)))
(+.f64 (*.f64 (sin.f64 x) (cos.f64 (+.f64 eps (/.f64 (PI.f64) #s(literal 2 binary64))))) (*.f64 (cos.f64 eps) (cos.f64 x)))
(+.f64 (*.f64 (sin.f64 (+.f64 eps x)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(+.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x x) (-.f64 x eps)) (/.f64 (*.f64 x x) (-.f64 x eps))) (*.f64 (/.f64 (*.f64 eps eps) (-.f64 x eps)) (/.f64 (*.f64 eps eps) (-.f64 x eps)))) (+.f64 (/.f64 (*.f64 x x) (-.f64 x eps)) (/.f64 (*.f64 eps eps) (-.f64 x eps))))
(/.f64 (-.f64 (*.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x)))) (*.f64 (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))) (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))))) (-.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))) (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x)))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 x x) (-.f64 x eps)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 eps eps) (-.f64 x eps)) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 x x) (-.f64 x eps)) (/.f64 (*.f64 x x) (-.f64 x eps)) (fma.f64 (/.f64 (*.f64 eps eps) (-.f64 x eps)) (/.f64 (*.f64 eps eps) (-.f64 x eps)) (*.f64 (/.f64 (*.f64 x x) (-.f64 x eps)) (/.f64 (*.f64 eps eps) (-.f64 x eps))))))
(/.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))) #s(literal 3 binary64))) (fma.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))) (-.f64 (*.f64 (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))) (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x)))) (*.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))) (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x)))))))
(/.f64 (neg.f64 (*.f64 (+.f64 eps x) (-.f64 eps x))) (neg.f64 (-.f64 eps x)))
(/.f64 (neg.f64 (neg.f64 (*.f64 (+.f64 eps x) (-.f64 x eps)))) (neg.f64 (neg.f64 (-.f64 x eps))))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 eps (-.f64 eps x) (*.f64 x x)))))
(/.f64 (-.f64 (*.f64 (*.f64 x x) (-.f64 x eps)) (*.f64 (-.f64 x eps) (*.f64 eps eps))) (*.f64 (-.f64 x eps) (-.f64 x eps)))
(/.f64 (fma.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x)) (*.f64 (fma.f64 eps (-.f64 eps x) (*.f64 x x)) (pow.f64 eps #s(literal 3 binary64)))) (*.f64 (fma.f64 eps (-.f64 eps x) (*.f64 x x)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))))
(/.f64 (*.f64 (+.f64 eps x) (-.f64 eps x)) (-.f64 eps x))
(/.f64 (neg.f64 (*.f64 (+.f64 eps x) (-.f64 x eps))) (neg.f64 (-.f64 x eps)))
(/.f64 (neg.f64 (+.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (fma.f64 eps eps (-.f64 (*.f64 x x) (*.f64 eps x)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (fma.f64 eps (-.f64 eps x) (*.f64 x x))))
(/.f64 (*.f64 (+.f64 eps x) (-.f64 x eps)) (-.f64 x eps))
(/.f64 (+.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (fma.f64 eps eps (-.f64 (*.f64 x x) (*.f64 eps x))))
(/.f64 (+.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (fma.f64 eps (-.f64 eps x) (*.f64 x x)))
(-.f64 (/.f64 (*.f64 eps eps) (-.f64 eps x)) (/.f64 (*.f64 x x) (-.f64 eps x)))
(-.f64 (/.f64 (*.f64 x x) (-.f64 x eps)) (/.f64 (*.f64 eps eps) (-.f64 x eps)))
(+.f64 (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps eps (-.f64 (*.f64 x x) (*.f64 eps x)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps eps (-.f64 (*.f64 x x) (*.f64 eps x)))))
(+.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps eps (-.f64 (*.f64 x x) (*.f64 eps x)))) (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps eps (-.f64 (*.f64 x x) (*.f64 eps x)))))
(+.f64 (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))))
(+.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))) (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))))
(+.f64 (/.f64 (*.f64 x x) (-.f64 x eps)) (/.f64 (*.f64 (neg.f64 eps) eps) (-.f64 x eps)))
(+.f64 eps x)
(+.f64 x eps)
x
eps
(/.f64 (-.f64 (*.f64 (*.f64 (sin.f64 x) #s(literal 0 binary64)) (*.f64 (sin.f64 x) #s(literal 0 binary64))) (*.f64 (*.f64 (cos.f64 x) #s(literal 1 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 (pow.f64 (*.f64 (sin.f64 x) #s(literal 0 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 x) #s(literal 1 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 x) #s(literal 0 binary64)) (*.f64 (sin.f64 x) #s(literal 0 binary64)) (-.f64 (*.f64 (*.f64 (cos.f64 x) #s(literal 1 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))))))
(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)))
(sin.f64 (+.f64 (neg.f64 (neg.f64 x)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 x) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 x))))
(cos.f64 (neg.f64 (neg.f64 x)))
(cos.f64 (neg.f64 x))
(cos.f64 x)
(+.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)))

eval20.0ms (0.2%)

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

Compiled 4 801 to 715 computations (85.1% saved)

prune8.0ms (0.1%)

Memory
-25.5MiB live, 16.7MiB allocated; 3ms collecting garbage
Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New1586164
Fresh000
Picked011
Done000
Total1587165
Accuracy
99.7%
Counts
165 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.5%
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
49.4%
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
48.8%
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
49.0%
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x #s(literal 1 binary64))))
48.6%
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
99.4%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps)))
78.1%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
Compiler

Compiled 171 to 132 computations (22.8% saved)

simplify0.0ms (0%)

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

series36.0ms (0.3%)

Memory
2.2MiB live, 37.1MiB allocated; 19ms collecting garbage
Counts
24 → 86
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps)))
(*.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps))
(fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))
(*.f64 (cos.f64 x) eps)
(cos.f64 x)
x
eps
#s(literal 1/2 binary64)
(sin.f64 x)
(neg.f64 eps)
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(-.f64 (cos.f64 eps) #s(literal 1 binary64))
(cos.f64 eps)
#s(literal 1 binary64)
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
#s(approx (cos x) #s(literal 1 binary64))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
(*.f64 (neg.f64 eps) (sin.f64 x))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x #s(literal 1 binary64))))
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)))
(fma.f64 (sin.f64 eps) x #s(literal 1 binary64))
(sin.f64 eps)
Outputs
(- (cos eps) 1)
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
(* -1/2 (pow eps 2))
(+ (* -1 (* eps x)) (* -1/2 (pow eps 2)))
(+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* 1/4 (* (pow eps 2) x)))))
(+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* x (+ (* 1/6 (* eps x)) (* 1/4 (pow eps 2)))))))
(* 1/2 eps)
(+ x (* 1/2 eps))
(+ (* 1/2 eps) (* x (+ 1 (* -1/4 (* eps x)))))
(+ (* 1/2 eps) (* x (+ 1 (* x (+ (* -1/4 eps) (* -1/6 x))))))
eps
(+ eps (* -1/2 (* eps (pow x 2))))
(+ eps (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2))))))
(+ eps (* (pow x 2) (+ (* -1/2 eps) (* (pow x 2) (+ (* -1/720 (* eps (pow x 2))) (* 1/24 eps))))))
1
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
x
(* x (+ 1 (* -1/6 (pow x 2))))
(* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))
(* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))
(cos eps)
(+ (cos eps) (* -1 (* x (sin eps))))
(+ (cos eps) (* x (- (* -1/2 (* x (cos eps))) (sin eps))))
(+ (cos eps) (* x (- (* x (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps))))) (sin eps))))
(+ eps x)
(* -1 (* eps x))
(* x (+ (* -1 eps) (* 1/6 (* eps (pow x 2)))))
(* x (+ (* -1 eps) (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps)))))
(* x (+ (* -1 eps) (* (pow x 2) (+ (* 1/6 eps) (* (pow x 2) (+ (* -1/120 eps) (* 1/5040 (* eps (pow x 2)))))))))
(+ 1 (* x (sin eps)))
(- (cos (+ eps x)) (cos x))
(* -1 (* eps (+ (sin x) (* 1/2 (* eps (cos x))))))
(+ (sin x) (* 1/2 (* eps (cos x))))
(* eps (cos x))
(cos x)
(sin x)
(cos (+ eps x))
(* x (+ 1 (/ eps x)))
(* -1 (* eps (sin x)))
(* -1 (* x (sin eps)))
(* x (- (/ (cos eps) x) (+ (sin eps) (/ 1 x))))
(* x (sin eps))
(* x (+ (sin eps) (/ 1 x)))
(- (cos (- eps (* -1 x))) (cos x))
(cos (- eps (* -1 x)))
(* -1 (* x (- (* -1 (/ eps x)) 1)))
(* -1 (* x (- (* -1 (/ (- (cos eps) 1) x)) (* -1 (sin eps)))))
(* -1 (* x (- (* -1 (sin eps)) (/ 1 x))))
(* eps (- (* -1/2 (* eps (cos x))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))
(* eps (+ (* -1 (sin x)) (* -1/2 (* eps (cos x)))))
(* -1 eps)
(* (pow eps 2) (- (* 1/24 (pow eps 2)) 1/2))
(* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* -1/720 (pow eps 2)))) 1/2))
(* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* (pow eps 2) (- (* 1/40320 (pow eps 2)) 1/720)))) 1/2))
(+ 1 (* -1/2 (pow eps 2)))
(+ 1 (* (pow eps 2) (- (* 1/24 (pow eps 2)) 1/2)))
(+ 1 (* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* -1/720 (pow eps 2)))) 1/2)))
(+ (cos x) (* -1 (* eps (sin x))))
(+ (cos x) (* eps (- (* -1/2 (* eps (cos x))) (sin x))))
(+ (cos x) (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))
(* eps (- (* -1/2 eps) x))
(* eps (- (* eps (- (* 1/6 (* eps x)) 1/2)) x))
(* eps (- (* eps (- (* eps (- (* 1/24 eps) (* -1/6 x))) 1/2)) x))
(+ 1 (* eps x))
(+ 1 (* eps (+ x (* -1/6 (* (pow eps 2) x)))))
(+ 1 (* eps (+ x (* (pow eps 2) (+ (* -1/6 x) (* 1/120 (* (pow eps 2) x)))))))
(* eps (+ 1 (* -1/6 (pow eps 2))))
(* eps (+ 1 (* (pow eps 2) (- (* 1/120 (pow eps 2)) 1/6))))
(* eps (+ 1 (* (pow eps 2) (- (* (pow eps 2) (+ 1/120 (* -1/5040 (pow eps 2)))) 1/6))))
(* -1/2 (* (pow eps 2) (cos x)))
(* (pow eps 2) (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))))
(* 1/2 (* eps (cos x)))
(* eps (+ (* 1/2 (cos x)) (/ (sin x) eps)))
(* eps (+ 1 (/ x eps)))
(- (cos eps) (+ 1 (* x (sin eps))))
(sin eps)
(- (cos (- x (* -1 eps))) (cos x))
(* -1 (* eps (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x)))))
(cos (- x (* -1 eps)))
(* -1 (* eps (- (* -1 (/ x eps)) 1)))
Calls

6 calls:

TimeVariablePointExpression
20.0ms
eps
@-inf
((- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (* (cos x) eps) (cos x) x eps 1/2 (sin x) (neg eps) (- (cos (+ x eps)) (cos x)) (- (cos eps) 1) (cos eps) 1 (- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (cos x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (- (cos (+ x eps)) (cos x)) (- (cos eps) (+ (* (sin eps) x) 1)) (+ (* (sin eps) x) 1) (sin eps))
3.0ms
x
@-inf
((- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (* (cos x) eps) (cos x) x eps 1/2 (sin x) (neg eps) (- (cos (+ x eps)) (cos x)) (- (cos eps) 1) (cos eps) 1 (- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (cos x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (- (cos (+ x eps)) (cos x)) (- (cos eps) (+ (* (sin eps) x) 1)) (+ (* (sin eps) x) 1) (sin eps))
3.0ms
eps
@0
((- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (* (cos x) eps) (cos x) x eps 1/2 (sin x) (neg eps) (- (cos (+ x eps)) (cos x)) (- (cos eps) 1) (cos eps) 1 (- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (cos x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (- (cos (+ x eps)) (cos x)) (- (cos eps) (+ (* (sin eps) x) 1)) (+ (* (sin eps) x) 1) (sin eps))
3.0ms
eps
@inf
((- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (* (cos x) eps) (cos x) x eps 1/2 (sin x) (neg eps) (- (cos (+ x eps)) (cos x)) (- (cos eps) 1) (cos eps) 1 (- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (cos x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (- (cos (+ x eps)) (cos x)) (- (cos eps) (+ (* (sin eps) x) 1)) (+ (* (sin eps) x) 1) (sin eps))
3.0ms
x
@inf
((- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (* (cos x) eps) (cos x) x eps 1/2 (sin x) (neg eps) (- (cos (+ x eps)) (cos x)) (- (cos eps) 1) (cos eps) 1 (- (cos (+ x eps)) (cos x)) (cos (+ x eps)) (+ x eps) (cos x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (- (cos (+ x eps)) (cos x)) (- (cos eps) (+ (* (sin eps) x) 1)) (+ (* (sin eps) x) 1) (sin eps))

simplify218.0ms (1.8%)

Memory
-34.6MiB live, 145.9MiB allocated; 103ms collecting garbage
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0281942
1938925
22980893
36118893
08108826
Stop Event
iter limit
node limit
Counts
86 → 84
Calls
Call 1
Inputs
(- (cos eps) 1)
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
(* -1/2 (pow eps 2))
(+ (* -1 (* eps x)) (* -1/2 (pow eps 2)))
(+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* 1/4 (* (pow eps 2) x)))))
(+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* x (+ (* 1/6 (* eps x)) (* 1/4 (pow eps 2)))))))
(* 1/2 eps)
(+ x (* 1/2 eps))
(+ (* 1/2 eps) (* x (+ 1 (* -1/4 (* eps x)))))
(+ (* 1/2 eps) (* x (+ 1 (* x (+ (* -1/4 eps) (* -1/6 x))))))
eps
(+ eps (* -1/2 (* eps (pow x 2))))
(+ eps (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2))))))
(+ eps (* (pow x 2) (+ (* -1/2 eps) (* (pow x 2) (+ (* -1/720 (* eps (pow x 2))) (* 1/24 eps))))))
1
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
x
(* x (+ 1 (* -1/6 (pow x 2))))
(* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))
(* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))
(cos eps)
(+ (cos eps) (* -1 (* x (sin eps))))
(+ (cos eps) (* x (- (* -1/2 (* x (cos eps))) (sin eps))))
(+ (cos eps) (* x (- (* x (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps))))) (sin eps))))
(+ eps x)
(* -1 (* eps x))
(* x (+ (* -1 eps) (* 1/6 (* eps (pow x 2)))))
(* x (+ (* -1 eps) (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps)))))
(* x (+ (* -1 eps) (* (pow x 2) (+ (* 1/6 eps) (* (pow x 2) (+ (* -1/120 eps) (* 1/5040 (* eps (pow x 2)))))))))
(+ 1 (* x (sin eps)))
(- (cos (+ eps x)) (cos x))
(* -1 (* eps (+ (sin x) (* 1/2 (* eps (cos x))))))
(+ (sin x) (* 1/2 (* eps (cos x))))
(* eps (cos x))
(cos x)
(sin x)
(cos (+ eps x))
(* x (+ 1 (/ eps x)))
(* -1 (* eps (sin x)))
(* -1 (* x (sin eps)))
(* x (- (/ (cos eps) x) (+ (sin eps) (/ 1 x))))
(* x (sin eps))
(* x (+ (sin eps) (/ 1 x)))
(- (cos (- eps (* -1 x))) (cos x))
(cos (- eps (* -1 x)))
(* -1 (* x (- (* -1 (/ eps x)) 1)))
(* -1 (* x (- (* -1 (/ (- (cos eps) 1) x)) (* -1 (sin eps)))))
(* -1 (* x (- (* -1 (sin eps)) (/ 1 x))))
(* eps (- (* -1/2 (* eps (cos x))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))
(* eps (+ (* -1 (sin x)) (* -1/2 (* eps (cos x)))))
(* -1 eps)
(* (pow eps 2) (- (* 1/24 (pow eps 2)) 1/2))
(* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* -1/720 (pow eps 2)))) 1/2))
(* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* (pow eps 2) (- (* 1/40320 (pow eps 2)) 1/720)))) 1/2))
(+ 1 (* -1/2 (pow eps 2)))
(+ 1 (* (pow eps 2) (- (* 1/24 (pow eps 2)) 1/2)))
(+ 1 (* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* -1/720 (pow eps 2)))) 1/2)))
(+ (cos x) (* -1 (* eps (sin x))))
(+ (cos x) (* eps (- (* -1/2 (* eps (cos x))) (sin x))))
(+ (cos x) (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))
(* eps (- (* -1/2 eps) x))
(* eps (- (* eps (- (* 1/6 (* eps x)) 1/2)) x))
(* eps (- (* eps (- (* eps (- (* 1/24 eps) (* -1/6 x))) 1/2)) x))
(+ 1 (* eps x))
(+ 1 (* eps (+ x (* -1/6 (* (pow eps 2) x)))))
(+ 1 (* eps (+ x (* (pow eps 2) (+ (* -1/6 x) (* 1/120 (* (pow eps 2) x)))))))
(* eps (+ 1 (* -1/6 (pow eps 2))))
(* eps (+ 1 (* (pow eps 2) (- (* 1/120 (pow eps 2)) 1/6))))
(* eps (+ 1 (* (pow eps 2) (- (* (pow eps 2) (+ 1/120 (* -1/5040 (pow eps 2)))) 1/6))))
(* -1/2 (* (pow eps 2) (cos x)))
(* (pow eps 2) (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))))
(* 1/2 (* eps (cos x)))
(* eps (+ (* 1/2 (cos x)) (/ (sin x) eps)))
(* eps (+ 1 (/ x eps)))
(- (cos eps) (+ 1 (* x (sin eps))))
(sin eps)
(- (cos (- x (* -1 eps))) (cos x))
(* -1 (* eps (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x)))))
(cos (- x (* -1 eps)))
(* -1 (* eps (- (* -1 (/ x eps)) 1)))
Outputs
(- (cos eps) 1)
(-.f64 (cos.f64 eps) #s(literal 1 binary64))
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)))
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 eps) #s(literal 1/2 binary64)) x) (sin.f64 eps)) x (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 eps) x) (fma.f64 #s(literal -1/2 binary64) (cos.f64 eps) #s(literal 1/2 binary64))) x) (sin.f64 eps)) x (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(* -1/2 (pow eps 2))
(*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))
(+ (* -1 (* eps x)) (* -1/2 (pow eps 2)))
(*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) eps) x) eps)
(+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* 1/4 (* (pow eps 2) x)))))
(fma.f64 (fma.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))
(+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* x (+ (* 1/6 (* eps x)) (* 1/4 (pow eps 2)))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) eps (*.f64 (fma.f64 (*.f64 eps (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x))) x (neg.f64 eps)) x))
(* 1/2 eps)
(*.f64 #s(literal 1/2 binary64) eps)
(+ x (* 1/2 eps))
(fma.f64 #s(literal 1/2 binary64) eps x)
(+ (* 1/2 eps) (* x (+ 1 (* -1/4 (* eps x)))))
(fma.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 eps x) #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))
(+ (* 1/2 eps) (* x (+ 1 (* x (+ (* -1/4 eps) (* -1/6 x))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))
eps
(+ eps (* -1/2 (* eps (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)) eps)
(+ eps (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2))))))
(fma.f64 (*.f64 eps (fma.f64 (*.f64 #s(literal 1/24 binary64) x) x #s(literal -1/2 binary64))) (*.f64 x x) eps)
(+ eps (* (pow x 2) (+ (* -1/2 eps) (* (pow x 2) (+ (* -1/720 (* eps (pow x 2))) (* 1/24 eps))))))
(fma.f64 (pow.f64 x #s(literal 4 binary64)) (*.f64 eps (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64))) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)) eps))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow x 2)))
(fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(fma.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/720 binary64) (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64))) (*.f64 x x) #s(literal 1 binary64))
x
(* x (+ 1 (* -1/6 (pow x 2))))
(fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal -1/6 binary64) x)
(* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))
(fma.f64 (pow.f64 x #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64)) x)
(* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))
(fma.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/5040 binary64) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64))) x)
(cos eps)
(cos.f64 eps)
(+ (cos eps) (* -1 (* x (sin eps))))
(fma.f64 (neg.f64 x) (sin.f64 eps) (cos.f64 eps))
(+ (cos eps) (* x (- (* -1/2 (* x (cos eps))) (sin eps))))
(fma.f64 (-.f64 (*.f64 (*.f64 (cos.f64 eps) x) #s(literal -1/2 binary64)) (sin.f64 eps)) x (cos.f64 eps))
(+ (cos eps) (* x (- (* x (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps))))) (sin eps))))
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 eps) x) (*.f64 #s(literal -1/2 binary64) (cos.f64 eps))) x) (sin.f64 eps)) x (cos.f64 eps))
(+ eps x)
(+.f64 eps x)
(* -1 (* eps x))
(*.f64 (neg.f64 x) eps)
(* x (+ (* -1 eps) (* 1/6 (* eps (pow x 2)))))
(*.f64 (*.f64 eps (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1 binary64))) x)
(* x (+ (* -1 eps) (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps)))))
(fma.f64 (pow.f64 x #s(literal 3 binary64)) (*.f64 eps (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64))) (*.f64 (neg.f64 x) eps))
(* x (+ (* -1 eps) (* (pow x 2) (+ (* 1/6 eps) (* (pow x 2) (+ (* -1/120 eps) (* 1/5040 (* eps (pow x 2)))))))))
(*.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) (*.f64 eps (fma.f64 (*.f64 #s(literal 1/5040 binary64) x) x #s(literal -1/120 binary64))) (*.f64 eps (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1 binary64)))) x)
(+ 1 (* x (sin eps)))
(fma.f64 (sin.f64 eps) x #s(literal 1 binary64))
(- (cos (+ eps x)) (cos x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(* -1 (* eps (+ (sin x) (* 1/2 (* eps (cos x))))))
(*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))) eps)
(+ (sin x) (* 1/2 (* eps (cos x))))
(fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))
(* eps (cos x))
(*.f64 (cos.f64 x) eps)
(cos x)
(cos.f64 x)
(sin x)
(sin.f64 x)
(cos (+ eps x))
(cos.f64 (+.f64 eps x))
(* x (+ 1 (/ eps x)))
(+.f64 eps x)
(* -1 (* eps (sin x)))
(*.f64 (sin.f64 x) (neg.f64 eps))
(* -1 (* x (sin eps)))
(*.f64 (neg.f64 x) (sin.f64 eps))
(* x (- (/ (cos eps) x) (+ (sin eps) (/ 1 x))))
(*.f64 (-.f64 (/.f64 (-.f64 (cos.f64 eps) #s(literal 1 binary64)) x) (sin.f64 eps)) x)
(* x (sin eps))
(*.f64 (sin.f64 eps) x)
(* x (+ (sin eps) (/ 1 x)))
(fma.f64 (sin.f64 eps) x #s(literal 1 binary64))
(- (cos (- eps (* -1 x))) (cos x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(cos (- eps (* -1 x)))
(cos.f64 (+.f64 eps x))
(* -1 (* x (- (* -1 (/ eps x)) 1)))
(*.f64 (neg.f64 x) (-.f64 (/.f64 (neg.f64 eps) x) #s(literal 1 binary64)))
(* -1 (* x (- (* -1 (/ (- (cos eps) 1) x)) (* -1 (sin eps)))))
(*.f64 (-.f64 (/.f64 (-.f64 (cos.f64 eps) #s(literal 1 binary64)) x) (sin.f64 eps)) x)
(* -1 (* x (- (* -1 (sin eps)) (/ 1 x))))
(*.f64 (neg.f64 x) (-.f64 (neg.f64 (sin.f64 eps)) (/.f64 #s(literal 1 binary64) x)))
(* eps (- (* -1/2 (* eps (cos x))) (sin x)))
(*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))) eps)
(* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))
(*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps)
(* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))
(*.f64 (-.f64 (*.f64 (fma.f64 (fma.f64 (sin.f64 x) #s(literal 1/6 binary64) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/24 binary64))) eps (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps)
(* eps (+ (* -1 (sin x)) (* -1/2 (* eps (cos x)))))
(*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))) eps)
(* -1 eps)
(neg.f64 eps)
(* (pow eps 2) (- (* 1/24 (pow eps 2)) 1/2))
(*.f64 (*.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) eps) eps) #s(literal 1/2 binary64)) eps) eps)
(* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* -1/720 (pow eps 2)))) 1/2))
(*.f64 (fma.f64 (pow.f64 eps #s(literal 4 binary64)) #s(literal -1/720 binary64) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) eps) eps) #s(literal 1/2 binary64))) (*.f64 eps eps))
(* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* (pow eps 2) (- (* 1/40320 (pow eps 2)) 1/720)))) 1/2))
(*.f64 (fma.f64 (pow.f64 eps #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 1/40320 binary64) (*.f64 eps eps)) #s(literal 1/720 binary64)) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) eps) eps) #s(literal 1/2 binary64))) (*.f64 eps eps))
(+ 1 (* -1/2 (pow eps 2)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) eps #s(literal 1 binary64))
(+ 1 (* (pow eps 2) (- (* 1/24 (pow eps 2)) 1/2)))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) eps) eps) #s(literal 1/2 binary64)) (*.f64 eps eps) #s(literal 1 binary64))
(+ 1 (* (pow eps 2) (- (* (pow eps 2) (+ 1/24 (* -1/720 (pow eps 2)))) 1/2)))
(fma.f64 (fma.f64 (pow.f64 eps #s(literal 4 binary64)) #s(literal -1/720 binary64) (-.f64 (*.f64 (*.f64 #s(literal 1/24 binary64) eps) eps) #s(literal 1/2 binary64))) (*.f64 eps eps) #s(literal 1 binary64))
(+ (cos x) (* -1 (* eps (sin x))))
(fma.f64 (neg.f64 (sin.f64 x)) eps (cos.f64 x))
(+ (cos x) (* eps (- (* -1/2 (* eps (cos x))) (sin x))))
(fma.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))) eps (cos.f64 x))
(+ (cos x) (* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x))))
(fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps (cos.f64 x))
(* eps (- (* -1/2 eps) x))
(*.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) eps) x) eps)
(* eps (- (* eps (- (* 1/6 (* eps x)) 1/2)) x))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps x) #s(literal 1/6 binary64)) #s(literal 1/2 binary64)) eps) x) eps)
(* eps (- (* eps (- (* eps (- (* 1/24 eps) (* -1/6 x))) 1/2)) x))
(*.f64 (-.f64 (*.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x (*.f64 #s(literal 1/24 binary64) eps)) eps) #s(literal 1/2 binary64)) eps) x) eps)
(+ 1 (* eps x))
(fma.f64 eps x #s(literal 1 binary64))
(+ 1 (* eps (+ x (* -1/6 (* (pow eps 2) x)))))
(fma.f64 x (fma.f64 (pow.f64 eps #s(literal 3 binary64)) #s(literal -1/6 binary64) eps) #s(literal 1 binary64))
(+ 1 (* eps (+ x (* (pow eps 2) (+ (* -1/6 x) (* 1/120 (* (pow eps 2) x)))))))
(fma.f64 (pow.f64 eps #s(literal 3 binary64)) (*.f64 x (fma.f64 (*.f64 #s(literal 1/120 binary64) eps) eps #s(literal -1/6 binary64))) (fma.f64 eps x #s(literal 1 binary64)))
(* eps (+ 1 (* -1/6 (pow eps 2))))
(fma.f64 (pow.f64 eps #s(literal 3 binary64)) #s(literal -1/6 binary64) eps)
(* eps (+ 1 (* (pow eps 2) (- (* 1/120 (pow eps 2)) 1/6))))
(fma.f64 (pow.f64 eps #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 eps eps)) #s(literal 1/6 binary64)) eps)
(* eps (+ 1 (* (pow eps 2) (- (* (pow eps 2) (+ 1/120 (* -1/5040 (pow eps 2)))) 1/6))))
(fma.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 (pow.f64 eps #s(literal 4 binary64)) #s(literal -1/5040 binary64) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 eps eps)) #s(literal 1/6 binary64))) eps)
(* -1/2 (* (pow eps 2) (cos x)))
(*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) eps)
(* (pow eps 2) (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))))
(*.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (/.f64 (neg.f64 (sin.f64 x)) eps)) eps) eps)
(* 1/2 (* eps (cos x)))
(*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64))
(* eps (+ (* 1/2 (cos x)) (/ (sin x) eps)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (cos.f64 x) (/.f64 (sin.f64 x) eps)) eps)
(* eps (+ 1 (/ x eps)))
(fma.f64 (/.f64 x eps) eps eps)
(- (cos eps) (+ 1 (* x (sin eps))))
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)))
(sin eps)
(sin.f64 eps)
(- (cos (- x (* -1 eps))) (cos x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(* -1 (* eps (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x)))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (cos.f64 x) (/.f64 (sin.f64 x) eps)) eps)
(cos (- x (* -1 eps)))
(cos.f64 (+.f64 eps x))
(* -1 (* eps (- (* -1 (/ x eps)) 1)))
(*.f64 (-.f64 (/.f64 x (neg.f64 eps)) #s(literal 1 binary64)) (neg.f64 eps))

rewrite125.0ms (1%)

Memory
10.7MiB live, 55.8MiB allocated; 2ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
028139
046139
1170139
21431139
08208139
Stop Event
iter limit
node limit
iter limit
Counts
24 → 223
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps)))
(*.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps))
(fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))
(*.f64 (cos.f64 x) eps)
(cos.f64 x)
x
eps
#s(literal 1/2 binary64)
(sin.f64 x)
(neg.f64 eps)
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(-.f64 (cos.f64 eps) #s(literal 1 binary64))
(cos.f64 eps)
#s(literal 1 binary64)
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
(cos.f64 (+.f64 x eps))
(+.f64 x eps)
#s(approx (cos x) #s(literal 1 binary64))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
(*.f64 (neg.f64 eps) (sin.f64 x))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x #s(literal 1 binary64))))
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)))
(fma.f64 (sin.f64 eps) x #s(literal 1 binary64))
(sin.f64 eps)
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps) (sin.f64 x))))
(*.f64 (neg.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps) (sin.f64 x))) eps)
(*.f64 (neg.f64 eps) (fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps) (sin.f64 x)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps) (sin.f64 x)) (neg.f64 eps))
(/.f64 (neg.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64))) (neg.f64 eps))) (neg.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x))))
(/.f64 (neg.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64))) (neg.f64 eps))) (neg.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 2 binary64)) (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)))))))
(/.f64 (neg.f64 (*.f64 (neg.f64 eps) (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64))))) (neg.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x))))
(/.f64 (neg.f64 (*.f64 (neg.f64 eps) (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64))))) (neg.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 2 binary64)) (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)))))))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64))) (neg.f64 eps)) (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x)))
(/.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64))) (neg.f64 eps)) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 2 binary64)) (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps))))))
(/.f64 (*.f64 (neg.f64 eps) (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64)))) (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x)))
(/.f64 (*.f64 (neg.f64 eps) (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64)))) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 2 binary64)) (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps))))))
(neg.f64 (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps) (sin.f64 x)) eps))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (neg.f64 eps) (*.f64 (neg.f64 eps) (sin.f64 x)))
(fma.f64 (neg.f64 eps) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (*.f64 (neg.f64 eps) (sin.f64 x)))
(fma.f64 (neg.f64 eps) (sin.f64 x) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (neg.f64 eps)))
(fma.f64 (neg.f64 eps) (sin.f64 x) (*.f64 (neg.f64 eps) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps))))
(fma.f64 (sin.f64 x) (neg.f64 eps) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (neg.f64 eps)))
(fma.f64 (sin.f64 x) (neg.f64 eps) (*.f64 (neg.f64 eps) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps))))
(fma.f64 eps (neg.f64 (sin.f64 x)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (neg.f64 eps)))
(fma.f64 eps (neg.f64 (sin.f64 x)) (*.f64 (neg.f64 eps) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps))))
(+.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (neg.f64 eps)) (*.f64 (neg.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (neg.f64 eps) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps))) (*.f64 (neg.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (neg.f64 eps) (sin.f64 x)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (neg.f64 eps)))
(+.f64 (*.f64 (neg.f64 eps) (sin.f64 x)) (*.f64 (neg.f64 eps) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 x) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) #s(literal 2 binary64)))) (neg.f64 (-.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64))))) (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 2 binary64)) (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps))))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x))) (*.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x)) (pow.f64 (sin.f64 x) #s(literal 2 binary64)))) (*.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x)) (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x))))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) #s(literal 3 binary64)) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 2 binary64)) (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps))))) (*.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 2 binary64)) (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps))))) (pow.f64 (sin.f64 x) #s(literal 3 binary64)))) (*.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 2 binary64)) (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps))))) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 2 binary64)) (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)))))))
(/.f64 (-.f64 (pow.f64 (sin.f64 x) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) #s(literal 2 binary64))) (-.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 x) (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x))))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 2 binary64)) (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) #s(literal 2 binary64)) (pow.f64 (sin.f64 x) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x)))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64))) (fma.f64 (sin.f64 x) (sin.f64 x) (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x)))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 3 binary64)) (pow.f64 (sin.f64 x) #s(literal 3 binary64))) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 2 binary64)) (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps))))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 x)) eps (sin.f64 x))
(fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (cos.f64 x) (sin.f64 x))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps) (sin.f64 x))
(fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))
(fma.f64 (cos.f64 x) (*.f64 #s(literal 1/2 binary64) eps) (sin.f64 x))
(fma.f64 eps (*.f64 (cos.f64 x) #s(literal 1/2 binary64)) (sin.f64 x))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x))) (/.f64 (pow.f64 (sin.f64 x) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x))))
(-.f64 (sin.f64 x) (*.f64 #s(literal -1/2 binary64) (*.f64 (cos.f64 x) eps)))
(-.f64 (sin.f64 x) (*.f64 (neg.f64 (*.f64 (cos.f64 x) eps)) #s(literal 1/2 binary64)))
(-.f64 (sin.f64 x) (*.f64 (neg.f64 (cos.f64 x)) (*.f64 #s(literal 1/2 binary64) eps)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) #s(literal 3 binary64)) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 2 binary64)) (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)))))) (/.f64 (pow.f64 (sin.f64 x) #s(literal 3 binary64)) (fma.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 x) eps) #s(literal 2 binary64)) (*.f64 (sin.f64 x) (-.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)))))))
(+.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (sin.f64 x))
(+.f64 (sin.f64 x) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(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)))
(sin.f64 (+.f64 (neg.f64 (neg.f64 x)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 x) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 x))))
(cos.f64 (neg.f64 (neg.f64 x)))
(cos.f64 (neg.f64 x))
(cos.f64 x)
(+.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
eps
#s(literal 1/2 binary64)
(sin.f64 x)
(neg.f64 eps)
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (pow.f64 (sin.f64 eps) #s(literal 2 binary64))))) (neg.f64 (neg.f64 (+.f64 #s(literal 1 binary64) (cos.f64 eps)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 eps) #s(literal 3 binary64)) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (fma.f64 (cos.f64 eps) (cos.f64 eps) (+.f64 #s(literal 1 binary64) (cos.f64 eps))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (cos.f64 eps) #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (cos.f64 eps))) (+.f64 #s(literal 1 binary64) (cos.f64 eps))) (pow.f64 (+.f64 #s(literal 1 binary64) (cos.f64 eps)) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 (pow.f64 (cos.f64 eps) #s(literal 3 binary64)) (fma.f64 (cos.f64 eps) (cos.f64 eps) (+.f64 #s(literal 1 binary64) (cos.f64 eps)))) (*.f64 (fma.f64 (cos.f64 eps) (cos.f64 eps) (+.f64 #s(literal 1 binary64) (cos.f64 eps))) #s(literal 1 binary64))) (*.f64 (fma.f64 (cos.f64 eps) (cos.f64 eps) (+.f64 #s(literal 1 binary64) (cos.f64 eps))) (fma.f64 (cos.f64 eps) (cos.f64 eps) (+.f64 #s(literal 1 binary64) (cos.f64 eps)))))
(/.f64 (neg.f64 (neg.f64 (pow.f64 (sin.f64 eps) #s(literal 2 binary64)))) (neg.f64 (+.f64 #s(literal 1 binary64) (cos.f64 eps))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 eps) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (cos.f64 eps) (cos.f64 eps) (+.f64 #s(literal 1 binary64) (cos.f64 eps)))))
(/.f64 (neg.f64 (pow.f64 (sin.f64 eps) #s(literal 2 binary64))) (+.f64 #s(literal 1 binary64) (cos.f64 eps)))
(/.f64 (-.f64 (pow.f64 (cos.f64 eps) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (cos.f64 eps) (cos.f64 eps) (+.f64 #s(literal 1 binary64) (cos.f64 eps))))
(-.f64 (/.f64 (pow.f64 (cos.f64 eps) #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (cos.f64 eps))) (pow.f64 (+.f64 #s(literal 1 binary64) (cos.f64 eps)) #s(literal -1 binary64)))
(-.f64 (/.f64 (pow.f64 (cos.f64 eps) #s(literal 3 binary64)) (fma.f64 (cos.f64 eps) (cos.f64 eps) (+.f64 #s(literal 1 binary64) (cos.f64 eps)))) (pow.f64 (fma.f64 (cos.f64 eps) (cos.f64 eps) (+.f64 #s(literal 1 binary64) (cos.f64 eps))) #s(literal -1 binary64)))
(-.f64 (cos.f64 eps) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (cos.f64 eps))
(*.f64 (cos.f64 eps) #s(literal 1 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 eps) (/.f64 (PI.f64) #s(literal 2 binary64))) (/.f64 (PI.f64) #s(literal 2 binary64)))) (neg.f64 (cos.f64 eps))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) eps) (/.f64 (PI.f64) #s(literal 2 binary64)))) (neg.f64 (cos.f64 eps))) #s(literal 2 binary64))
(fma.f64 (neg.f64 (sin.f64 eps)) #s(literal 0 binary64) (cos.f64 eps))
(fma.f64 (sin.f64 eps) #s(literal 0 binary64) (cos.f64 eps))
(fma.f64 #s(literal 1 binary64) (cos.f64 eps) (*.f64 #s(literal 0 binary64) (sin.f64 eps)))
(fma.f64 (cos.f64 eps) #s(literal 1 binary64) (*.f64 #s(literal 0 binary64) (sin.f64 eps)))
(sin.f64 (+.f64 (neg.f64 (neg.f64 eps)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 eps) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) eps))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 eps))))
(cos.f64 (neg.f64 (neg.f64 eps)))
(cos.f64 (neg.f64 eps))
(cos.f64 eps)
(+.f64 (*.f64 (neg.f64 (sin.f64 eps)) #s(literal 0 binary64)) (cos.f64 eps))
(+.f64 (*.f64 (sin.f64 eps) #s(literal 0 binary64)) (cos.f64 eps))
(+.f64 (cos.f64 eps) (*.f64 #s(literal 0 binary64) (sin.f64 eps)))
#s(literal 1 binary64)
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 2 binary64))))) (neg.f64 (neg.f64 (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 #s(approx (cos x) #s(literal 1 binary64)) (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x)))) (*.f64 (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x))) (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 2 binary64)))) (*.f64 (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x))) (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (fma.f64 #s(approx (cos x) #s(literal 1 binary64)) (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))) (*.f64 (fma.f64 #s(approx (cos x) #s(literal 1 binary64)) (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64))) (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 3 binary64)))) (*.f64 (fma.f64 #s(approx (cos x) #s(literal 1 binary64)) (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64))) (fma.f64 #s(approx (cos x) #s(literal 1 binary64)) (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 2 binary64)))) (neg.f64 (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(approx (cos x) #s(literal 1 binary64)) (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 2 binary64))) (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x))))
(/.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 3 binary64))) (fma.f64 #s(approx (cos x) #s(literal 1 binary64)) (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64))))
(-.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)) (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x)))) (/.f64 (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x)))))
(-.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 3 binary64)) (fma.f64 #s(approx (cos x) #s(literal 1 binary64)) (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))) (/.f64 (pow.f64 #s(approx (cos x) #s(literal 1 binary64)) #s(literal 3 binary64)) (fma.f64 #s(approx (cos x) #s(literal 1 binary64)) (+.f64 #s(approx (cos x) #s(literal 1 binary64)) (cos.f64 (+.f64 eps x))) (pow.f64 (cos.f64 (+.f64 eps x)) #s(literal 2 binary64)))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) #s(approx (cos x) #s(literal 1 binary64))))
(-.f64 (cos.f64 (+.f64 eps x)) #s(approx (cos x) #s(literal 1 binary64)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 2 binary64)) (pow.f64 (*.f64 (sin.f64 eps) (sin.f64 x)) #s(literal 2 binary64)))) (neg.f64 (cos.f64 (-.f64 eps x))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 eps) (sin.f64 x)) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 eps) (sin.f64 x)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 eps) (sin.f64 x)))))))
(/.f64 (-.f64 (*.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 x) eps)) (cos.f64 (+.f64 eps x))) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x))))) #s(literal 4 binary64))
(/.f64 (-.f64 (*.f64 (-.f64 (fma.f64 (neg.f64 (sin.f64 x)) (neg.f64 (sin.f64 eps)) (*.f64 (cos.f64 eps) (cos.f64 x))) (cos.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) eps)))) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x))))) #s(literal 4 binary64))
(/.f64 (-.f64 (*.f64 (+.f64 (cos.f64 (+.f64 eps x)) (cos.f64 (-.f64 (neg.f64 x) (neg.f64 eps)))) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x))))) #s(literal 4 binary64))
(/.f64 (-.f64 (*.f64 (+.f64 (cos.f64 (+.f64 x (neg.f64 eps))) (cos.f64 (-.f64 x (neg.f64 eps)))) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x))))) #s(literal 4 binary64))
(/.f64 (-.f64 (*.f64 (+.f64 (cos.f64 (+.f64 eps x)) (cos.f64 (-.f64 eps x))) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x))))) #s(literal 4 binary64))
(/.f64 (-.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 x) eps)) (cos.f64 (+.f64 eps x))) (-.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x)))) #s(literal 2 binary64))
(/.f64 (-.f64 (-.f64 (fma.f64 (neg.f64 (sin.f64 x)) (neg.f64 (sin.f64 eps)) (*.f64 (cos.f64 eps) (cos.f64 x))) (cos.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) eps)))) (-.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x)))) #s(literal 2 binary64))
(/.f64 (-.f64 (+.f64 (cos.f64 (+.f64 eps x)) (cos.f64 (-.f64 (neg.f64 x) (neg.f64 eps)))) (-.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x)))) #s(literal 2 binary64))
(/.f64 (-.f64 (+.f64 (cos.f64 (+.f64 x (neg.f64 eps))) (cos.f64 (-.f64 x (neg.f64 eps)))) (-.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x)))) #s(literal 2 binary64))
(/.f64 (-.f64 (+.f64 (cos.f64 (+.f64 eps x)) (cos.f64 (-.f64 eps x))) (-.f64 (cos.f64 (-.f64 eps x)) (cos.f64 (+.f64 eps x)))) #s(literal 2 binary64))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 2 binary64)) (pow.f64 (*.f64 (sin.f64 eps) (sin.f64 x)) #s(literal 2 binary64))) (cos.f64 (-.f64 eps x)))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 eps) (sin.f64 x)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 eps) (sin.f64 x)) #s(literal 2 binary64)) (*.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 eps) (sin.f64 x))))))
(fma.f64 (cos.f64 (/.f64 (*.f64 x x) (-.f64 x eps))) (cos.f64 (/.f64 (*.f64 eps eps) (-.f64 x eps))) (*.f64 (sin.f64 (/.f64 (*.f64 x x) (-.f64 x eps))) (sin.f64 (/.f64 (*.f64 eps eps) (-.f64 x eps)))))
(fma.f64 (neg.f64 (sin.f64 (+.f64 eps x))) #s(literal 0 binary64) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(fma.f64 (sin.f64 (+.f64 eps x)) #s(literal 0 binary64) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(fma.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)) (*.f64 (cos.f64 eps) (cos.f64 x)))
(fma.f64 #s(literal 1 binary64) (cos.f64 (+.f64 eps x)) (*.f64 #s(literal 0 binary64) (sin.f64 (+.f64 eps x))))
(fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))
(fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (cos.f64 eps) (cos.f64 x)))
(fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))
(sin.f64 (+.f64 (-.f64 (neg.f64 x) eps) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 (neg.f64 (+.f64 eps x))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 (+.f64 eps x)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (-.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x) (neg.f64 eps)))
(sin.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x) eps))
(sin.f64 (+.f64 x (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) eps)))
(-.f64 (*.f64 (cos.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x)))) (cos.f64 (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))))) (*.f64 (sin.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x)))) (sin.f64 (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 eps)) (neg.f64 (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 x)) (neg.f64 (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 eps) (sin.f64 x)))
(cos.f64 (neg.f64 (-.f64 (neg.f64 x) eps)))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 (+.f64 eps x)))))
(cos.f64 (neg.f64 (neg.f64 (+.f64 eps x))))
(cos.f64 (-.f64 (neg.f64 x) eps))
(cos.f64 (neg.f64 (+.f64 eps x)))
(cos.f64 (+.f64 eps x))
(+.f64 (*.f64 (cos.f64 (/.f64 (*.f64 x x) (-.f64 x eps))) (cos.f64 (/.f64 (*.f64 eps eps) (-.f64 x eps)))) (*.f64 (sin.f64 (/.f64 (*.f64 x x) (-.f64 x eps))) (sin.f64 (/.f64 (*.f64 eps eps) (-.f64 x eps)))))
(+.f64 (*.f64 (sin.f64 x) (neg.f64 (sin.f64 eps))) (*.f64 (cos.f64 eps) (cos.f64 x)))
(+.f64 (*.f64 (neg.f64 (sin.f64 (+.f64 eps x))) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cos.f64 (+.f64 eps x))) (*.f64 #s(literal 0 binary64) (sin.f64 (+.f64 eps x))))
(+.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (cos.f64 eps) (cos.f64 x)))
(+.f64 (*.f64 (sin.f64 (+.f64 eps x)) #s(literal 0 binary64)) (*.f64 (cos.f64 (+.f64 eps x)) #s(literal 1 binary64)))
(+.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))
(/.f64 (neg.f64 (-.f64 (*.f64 eps eps) (*.f64 x x))) (neg.f64 (-.f64 eps x)))
(/.f64 (neg.f64 (neg.f64 (*.f64 (+.f64 eps x) (-.f64 x eps)))) (neg.f64 (neg.f64 (-.f64 x eps))))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 eps (-.f64 eps x) (*.f64 x x)))))
(/.f64 (-.f64 (*.f64 (*.f64 x x) (-.f64 x eps)) (*.f64 (-.f64 x eps) (*.f64 eps eps))) (*.f64 (-.f64 x eps) (-.f64 x eps)))
(/.f64 (fma.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x)) (*.f64 (fma.f64 eps (-.f64 eps x) (*.f64 x x)) (pow.f64 eps #s(literal 3 binary64)))) (*.f64 (fma.f64 eps (-.f64 eps x) (*.f64 x x)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))))
(/.f64 (-.f64 (*.f64 eps eps) (*.f64 x x)) (-.f64 eps x))
(/.f64 (neg.f64 (*.f64 (+.f64 eps x) (-.f64 x eps))) (neg.f64 (-.f64 x eps)))
(/.f64 (neg.f64 (+.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (fma.f64 eps eps (-.f64 (*.f64 x x) (*.f64 eps x)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (fma.f64 eps (-.f64 eps x) (*.f64 x x))))
(/.f64 (*.f64 (+.f64 eps x) (-.f64 x eps)) (-.f64 x eps))
(/.f64 (+.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (fma.f64 eps eps (-.f64 (*.f64 x x) (*.f64 eps x))))
(/.f64 (+.f64 (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (fma.f64 eps (-.f64 eps x) (*.f64 x x)))
(-.f64 (/.f64 (*.f64 x x) (-.f64 x eps)) (/.f64 (*.f64 eps eps) (-.f64 x eps)))
(+.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))) (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 eps (-.f64 eps x) (*.f64 x x))))
(+.f64 eps x)
(+.f64 x eps)
#s(approx (cos x) #s(literal 1 binary64))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
(*.f64 (neg.f64 eps) (sin.f64 x))
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 eps (neg.f64 (sin.f64 x)))
(neg.f64 (*.f64 (sin.f64 x) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x)) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 (-.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x)) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 (pow.f64 (-.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x)) #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x)) #s(literal 1 binary64))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 eps) #s(literal 2 binary64)) (pow.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) #s(literal 2 binary64))))) (neg.f64 (neg.f64 (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps)))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 eps) #s(literal 3 binary64)) (pow.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps)) (pow.f64 (cos.f64 eps) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (cos.f64 eps) #s(literal 2 binary64)) (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps))) (*.f64 (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps)) (pow.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) #s(literal 2 binary64)))) (*.f64 (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps)) (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps))))
(/.f64 (-.f64 (*.f64 (pow.f64 (cos.f64 eps) #s(literal 3 binary64)) (fma.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps)) (pow.f64 (cos.f64 eps) #s(literal 2 binary64)))) (*.f64 (fma.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps)) (pow.f64 (cos.f64 eps) #s(literal 2 binary64))) (pow.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) #s(literal 3 binary64)))) (*.f64 (fma.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps)) (pow.f64 (cos.f64 eps) #s(literal 2 binary64))) (fma.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps)) (pow.f64 (cos.f64 eps) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (-.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x)) #s(literal 2 binary64)) #s(literal 1 binary64)) (+.f64 (-.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x)) #s(literal 1 binary64)))
(/.f64 (-.f64 (pow.f64 (-.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x)) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 (pow.f64 (-.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x)) #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x)) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 eps) #s(literal 2 binary64)) (pow.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) #s(literal 2 binary64)))) (neg.f64 (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 eps) #s(literal 3 binary64)) (pow.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps)) (pow.f64 (cos.f64 eps) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (cos.f64 eps) #s(literal 2 binary64)) (pow.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) #s(literal 2 binary64))) (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps)))
(/.f64 (-.f64 (pow.f64 (cos.f64 eps) #s(literal 3 binary64)) (pow.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) #s(literal 3 binary64))) (fma.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps)) (pow.f64 (cos.f64 eps) #s(literal 2 binary64))))
(-.f64 (/.f64 (pow.f64 (cos.f64 eps) #s(literal 2 binary64)) (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps))) (/.f64 (pow.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps))))
(-.f64 (/.f64 (pow.f64 (cos.f64 eps) #s(literal 3 binary64)) (fma.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps)) (pow.f64 (cos.f64 eps) #s(literal 2 binary64)))) (/.f64 (pow.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) #s(literal 3 binary64)) (fma.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (+.f64 (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)) (cos.f64 eps)) (pow.f64 (cos.f64 eps) #s(literal 2 binary64)))))
(-.f64 (-.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x)) #s(literal 1 binary64))
(-.f64 (-.f64 (cos.f64 eps) #s(literal 1 binary64)) (*.f64 (sin.f64 eps) x))
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 (sin.f64 eps) x))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 (sin.f64 eps) x) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 3 binary64)) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (sin.f64 eps) x)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)) (-.f64 (*.f64 (sin.f64 eps) x) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 (sin.f64 eps) x) #s(literal 1 binary64)) #s(literal 1 binary64))) (pow.f64 (-.f64 (*.f64 (sin.f64 eps) x) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (sin.f64 eps) x)) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (sin.f64 eps) x)) #s(literal 1 binary64))) (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (sin.f64 eps) x)) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (sin.f64 eps) x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (sin.f64 eps) x) #s(literal 1 binary64))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)) (*.f64 (sin.f64 eps) x)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (sin.f64 eps) x))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (sin.f64 eps) x) #s(literal 1 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)) (*.f64 (sin.f64 eps) x))))
(/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 3 binary64)) #s(literal 1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (sin.f64 eps) x)))
(fma.f64 (*.f64 (sin.f64 eps) x) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (sin.f64 eps) (*.f64 x #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (sin.f64 eps) x #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (sin.f64 eps) x) #s(literal 1 binary64))
(fma.f64 x (*.f64 (sin.f64 eps) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 x (sin.f64 eps) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)) (-.f64 (*.f64 (sin.f64 eps) x) #s(literal 1 binary64))) (pow.f64 (-.f64 (*.f64 (sin.f64 eps) x) #s(literal 1 binary64)) #s(literal -1 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 eps)) x))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 x) (sin.f64 eps)))
(+.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (sin.f64 eps) x))) (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 eps) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (sin.f64 eps) x)) #s(literal -1 binary64)))
(+.f64 (*.f64 (sin.f64 eps) x) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (sin.f64 eps) x))
(sin.f64 eps)

eval35.0ms (0.3%)

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

Compiled 8 609 to 1 306 computations (84.8% saved)

prune46.0ms (0.4%)

Memory
-29.0MiB live, 19.1MiB allocated; 22ms collecting garbage
Pruning

14 alts after pruning (10 fresh and 4 done)

PrunedKeptTotal
New3269335
Fresh011
Picked235
Done011
Total32814342
Accuracy
100.0%
Counts
342 → 14
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.5%
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
49.4%
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
48.8%
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
99.5%
#s(approx (- (cos (+ x eps)) (cos x)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (neg.f64 eps) (*.f64 (neg.f64 eps) (sin.f64 x))))
99.4%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps)))
99.2%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (fma.f64 (*.f64 #s(approx (cos x) #s(literal 1 binary64)) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps)))
78.1%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
99.0%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
98.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 eps x) #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
98.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 #s(literal 1/2 binary64) eps x)) (neg.f64 eps)))
98.7%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (fma.f64 (fma.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
50.0%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
77.8%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (*.f64 eps (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1 binary64))) x)))
77.8%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 x) eps)))
Compiler

Compiled 554 to 386 computations (30.3% saved)

simplify0.0ms (0%)

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

series23.0ms (0.2%)

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

6 calls:

TimeVariablePointExpression
4.0ms
x
@0
((- (cos (+ x eps)) (cos x)) (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (* 1/2 (* (cos x) eps)) 1/2 (* (cos x) eps) (cos x) x eps (neg eps) (* (neg eps) (sin x)) (sin x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (* (neg x) eps) (neg x) (- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (+ (* 1/2 eps) x) (- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (+ (* (+ (* -1/4 (* eps x)) 1) x) (* 1/2 eps)) (+ (* -1/4 (* eps x)) 1) -1/4 (* eps x) 1 (* 1/2 eps) (- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (+ (* (+ (* (+ (* -1/6 x) (* -1/4 eps)) x) 1) x) (* 1/2 eps)) (+ (* (+ (* -1/6 x) (* -1/4 eps)) x) 1) (+ (* -1/6 x) (* -1/4 eps)) -1/6 (* -1/4 eps))
4.0ms
eps
@inf
((- (cos (+ x eps)) (cos x)) (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (* 1/2 (* (cos x) eps)) 1/2 (* (cos x) eps) (cos x) x eps (neg eps) (* (neg eps) (sin x)) (sin x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (* (neg x) eps) (neg x) (- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (+ (* 1/2 eps) x) (- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (+ (* (+ (* -1/4 (* eps x)) 1) x) (* 1/2 eps)) (+ (* -1/4 (* eps x)) 1) -1/4 (* eps x) 1 (* 1/2 eps) (- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (+ (* (+ (* (+ (* -1/6 x) (* -1/4 eps)) x) 1) x) (* 1/2 eps)) (+ (* (+ (* -1/6 x) (* -1/4 eps)) x) 1) (+ (* -1/6 x) (* -1/4 eps)) -1/6 (* -1/4 eps))
4.0ms
eps
@-inf
((- (cos (+ x eps)) (cos x)) (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (* 1/2 (* (cos x) eps)) 1/2 (* (cos x) eps) (cos x) x eps (neg eps) (* (neg eps) (sin x)) (sin x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (* (neg x) eps) (neg x) (- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (+ (* 1/2 eps) x) (- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (+ (* (+ (* -1/4 (* eps x)) 1) x) (* 1/2 eps)) (+ (* -1/4 (* eps x)) 1) -1/4 (* eps x) 1 (* 1/2 eps) (- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (+ (* (+ (* (+ (* -1/6 x) (* -1/4 eps)) x) 1) x) (* 1/2 eps)) (+ (* (+ (* -1/6 x) (* -1/4 eps)) x) 1) (+ (* -1/6 x) (* -1/4 eps)) -1/6 (* -1/4 eps))
3.0ms
eps
@0
((- (cos (+ x eps)) (cos x)) (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (* 1/2 (* (cos x) eps)) 1/2 (* (cos x) eps) (cos x) x eps (neg eps) (* (neg eps) (sin x)) (sin x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (* (neg x) eps) (neg x) (- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (+ (* 1/2 eps) x) (- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (+ (* (+ (* -1/4 (* eps x)) 1) x) (* 1/2 eps)) (+ (* -1/4 (* eps x)) 1) -1/4 (* eps x) 1 (* 1/2 eps) (- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (+ (* (+ (* (+ (* -1/6 x) (* -1/4 eps)) x) 1) x) (* 1/2 eps)) (+ (* (+ (* -1/6 x) (* -1/4 eps)) x) 1) (+ (* -1/6 x) (* -1/4 eps)) -1/6 (* -1/4 eps))
3.0ms
x
@-inf
((- (cos (+ x eps)) (cos x)) (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (* 1/2 (* (cos x) eps)) 1/2 (* (cos x) eps) (cos x) x eps (neg eps) (* (neg eps) (sin x)) (sin x) (- (cos (+ x eps)) (cos x)) (* (neg eps) (sin x)) (* (neg x) eps) (neg x) (- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (+ (* 1/2 eps) x) (- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (+ (* (+ (* -1/4 (* eps x)) 1) x) (* 1/2 eps)) (+ (* -1/4 (* eps x)) 1) -1/4 (* eps x) 1 (* 1/2 eps) (- (cos (+ x eps)) (cos x)) (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (+ (* (* (cos x) eps) 1/2) (sin x)) (+ (* (+ (* (+ (* -1/6 x) (* -1/4 eps)) x) 1) x) (* 1/2 eps)) (+ (* (+ (* -1/6 x) (* -1/4 eps)) x) 1) (+ (* -1/6 x) (* -1/4 eps)) -1/6 (* -1/4 eps))

simplify131.0ms (1.1%)

Memory
6.0MiB live, 54.1MiB allocated; 3ms collecting garbage
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03191139
110991094
238691061
08111975
Stop Event
iter limit
node limit
Counts
98 → 96
Calls
Call 1
Inputs
(- (cos eps) 1)
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
(* -1/2 (pow eps 2))
(+ (* -1 (* eps x)) (* -1/2 (pow eps 2)))
(+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* 1/4 (* (pow eps 2) x)))))
(+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* x (+ (* 1/6 (* eps x)) (* 1/4 (pow eps 2)))))))
(* 1/2 eps)
(+ (* -1/4 (* eps (pow x 2))) (* 1/2 eps))
(+ (* 1/2 eps) (* (pow x 2) (+ (* -1/4 eps) (* 1/48 (* eps (pow x 2))))))
(+ (* 1/2 eps) (* (pow x 2) (+ (* -1/4 eps) (* (pow x 2) (+ (* -1/1440 (* eps (pow x 2))) (* 1/48 eps))))))
eps
(+ eps (* -1/2 (* eps (pow x 2))))
(+ eps (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2))))))
(+ eps (* (pow x 2) (+ (* -1/2 eps) (* (pow x 2) (+ (* -1/720 (* eps (pow x 2))) (* 1/24 eps))))))
1
(+ 1 (* -1/2 (pow x 2)))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
x
(* -1 (* eps x))
(* x (+ (* -1 eps) (* 1/6 (* eps (pow x 2)))))
(* x (+ (* -1 eps) (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps)))))
(* x (+ (* -1 eps) (* (pow x 2) (+ (* 1/6 eps) (* (pow x 2) (+ (* -1/120 eps) (* 1/5040 (* eps (pow x 2)))))))))
(* x (+ 1 (* -1/6 (pow x 2))))
(* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))
(* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))
(* -1 x)
(+ x (* 1/2 eps))
(+ (* 1/2 eps) (* x (+ 1 (* -1/4 (* eps x)))))
(+ (* 1/2 eps) (* x (+ 1 (* x (+ (* -1/4 eps) (* -1/6 x))))))
(+ 1 (* -1/4 (* eps x)))
(* eps x)
(+ 1 (* x (+ (* -1/4 eps) (* -1/6 x))))
(* -1/4 eps)
(+ (* -1/4 eps) (* -1/6 x))
(- (cos (+ eps x)) (cos x))
(+ (* -1 (* eps (sin x))) (* -1/2 (* (pow eps 2) (cos x))))
(* 1/2 (* eps (cos x)))
(* eps (cos x))
(cos x)
(* -1 (* eps (sin x)))
(sin x)
(* -1 (* eps (+ (sin x) (* 1/2 (* eps (cos x))))))
(+ (sin x) (* 1/2 (* eps (cos x))))
(* x (+ 1 (* 1/2 (/ eps x))))
(* -1/4 (* eps (pow x 2)))
(* (pow x 2) (+ (* -1/4 eps) (/ 1 x)))
(* (pow x 2) (+ (* -1/4 eps) (+ (* 1/2 (/ eps (pow x 2))) (/ 1 x))))
(* -1/4 (* eps x))
(* x (+ (* -1/4 eps) (/ 1 x)))
(* -1/6 (pow x 3))
(* (pow x 3) (- (* -1/4 (/ eps x)) 1/6))
(* (pow x 3) (- (+ (* -1/4 (/ eps x)) (/ 1 (pow x 2))) 1/6))
(* (pow x 3) (- (+ (* -1/4 (/ eps x)) (+ (* 1/2 (/ eps (pow x 3))) (/ 1 (pow x 2)))) 1/6))
(* -1/6 (pow x 2))
(* (pow x 2) (- (* -1/4 (/ eps x)) 1/6))
(* (pow x 2) (- (+ (* -1/4 (/ eps x)) (/ 1 (pow x 2))) 1/6))
(* -1/6 x)
(* x (- (* -1/4 (/ eps x)) 1/6))
(- (cos (- eps (* -1 x))) (cos x))
(* -1 (* x (- (* -1/2 (/ eps x)) 1)))
(* (pow x 2) (+ (* -1 (/ (- (* -1/2 (/ eps x)) 1) x)) (* -1/4 eps)))
(* -1 (* x (- (* 1/4 eps) (/ 1 x))))
(* -1 (* (pow x 3) (+ 1/6 (* 1/4 (/ eps x)))))
(* -1 (* (pow x 3) (+ 1/6 (* -1 (/ (+ (* -1/4 eps) (/ 1 x)) x)))))
(* -1 (* (pow x 3) (+ 1/6 (* -1 (/ (+ (* -1 (/ (- (* -1/2 (/ eps x)) 1) x)) (* -1/4 eps)) x)))))
(* (pow x 2) (- (* -1 (/ (- (* 1/4 eps) (/ 1 x)) x)) 1/6))
(* -1 (* x (+ 1/6 (* 1/4 (/ eps x)))))
(* eps (- (* -1/2 (* eps (cos x))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))
(* eps (+ (* -1 (sin x)) (* -1/2 (* eps (cos x)))))
(* -1 eps)
(+ x (* eps (+ 1/2 (* -1/4 (pow x 2)))))
(+ (* eps (+ 1/2 (* -1/4 (pow x 2)))) (* x (+ 1 (* -1/6 (pow x 2)))))
(+ 1 (* -1/6 (pow x 2)))
(+ 1 (+ (* -1/4 (* eps x)) (* -1/6 (pow x 2))))
(* -1/2 (* (pow eps 2) (cos x)))
(* (pow eps 2) (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))))
(* eps (+ (* 1/2 (cos x)) (/ (sin x) eps)))
(* eps (+ 1/2 (/ x eps)))
(* eps (+ 1/2 (* -1/4 (pow x 2))))
(* eps (+ 1/2 (+ (* -1/4 (pow x 2)) (/ x eps))))
(* eps (+ (* -1/4 x) (/ 1 eps)))
(* eps (+ 1/2 (+ (* -1/4 (pow x 2)) (/ (* x (+ 1 (* -1/6 (pow x 2)))) eps))))
(* eps (+ (* -1/4 x) (+ (* -1/6 (/ (pow x 2) eps)) (/ 1 eps))))
(* eps (- (* -1/6 (/ x eps)) 1/4))
(- (cos (- x (* -1 eps))) (cos x))
(* -1 (* eps (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x)))))
(* -1 (* eps (- (* -1 (/ x eps)) 1/2)))
(* -1 (* eps (- (* 1/4 (pow x 2)) 1/2)))
(* -1 (* eps (- (+ (* -1 (/ x eps)) (* 1/4 (pow x 2))) 1/2)))
(* -1 (* eps (- (* 1/4 x) (/ 1 eps))))
(* -1 (* eps (- (+ (* -1 (/ (* x (+ 1 (* -1/6 (pow x 2)))) eps)) (* 1/4 (pow x 2))) 1/2)))
(* -1 (* eps (+ (* -1 (/ (+ 1 (* -1/6 (pow x 2))) eps)) (* 1/4 x))))
(* -1 (* eps (+ 1/4 (* 1/6 (/ x eps)))))
Outputs
(- (cos eps) 1)
(-.f64 (cos.f64 eps) #s(literal 1 binary64))
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)))
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 eps) #s(literal 1/2 binary64)) x) (sin.f64 eps)) x (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 eps) x) (fma.f64 #s(literal -1/2 binary64) (cos.f64 eps) #s(literal 1/2 binary64))) x) (sin.f64 eps)) x (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(* -1/2 (pow eps 2))
(*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))
(+ (* -1 (* eps x)) (* -1/2 (pow eps 2)))
(*.f64 eps (-.f64 (*.f64 #s(literal -1/2 binary64) eps) x))
(+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* 1/4 (* (pow eps 2) x)))))
(fma.f64 (fma.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))
(+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* x (+ (* 1/6 (* eps x)) (* 1/4 (pow eps 2)))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) eps (*.f64 (fma.f64 (*.f64 eps (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x))) x (neg.f64 eps)) x))
(* 1/2 eps)
(*.f64 #s(literal 1/2 binary64) eps)
(+ (* -1/4 (* eps (pow x 2))) (* 1/2 eps))
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps)
(+ (* 1/2 eps) (* (pow x 2) (+ (* -1/4 eps) (* 1/48 (* eps (pow x 2))))))
(fma.f64 (*.f64 eps (fma.f64 (*.f64 x x) #s(literal 1/48 binary64) #s(literal -1/4 binary64))) (*.f64 x x) (*.f64 #s(literal 1/2 binary64) eps))
(+ (* 1/2 eps) (* (pow x 2) (+ (* -1/4 eps) (* (pow x 2) (+ (* -1/1440 (* eps (pow x 2))) (* 1/48 eps))))))
(fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps (*.f64 (pow.f64 x #s(literal 4 binary64)) (*.f64 eps (fma.f64 (*.f64 x x) #s(literal -1/1440 binary64) #s(literal 1/48 binary64)))))
eps
(+ eps (* -1/2 (* eps (pow x 2))))
(*.f64 eps (fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64)))
(+ eps (* (pow x 2) (+ (* -1/2 eps) (* 1/24 (* eps (pow x 2))))))
(fma.f64 (*.f64 eps (fma.f64 (*.f64 #s(literal 1/24 binary64) x) x #s(literal -1/2 binary64))) (*.f64 x x) eps)
(+ eps (* (pow x 2) (+ (* -1/2 eps) (* (pow x 2) (+ (* -1/720 (* eps (pow x 2))) (* 1/24 eps))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/720 binary64) eps) (pow.f64 x #s(literal 4 binary64)) (*.f64 eps (fma.f64 (*.f64 #s(literal 1/24 binary64) x) x #s(literal -1/2 binary64)))) (*.f64 x x) eps)
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (pow x 2)))
(fma.f64 (*.f64 x x) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* 1/24 (pow x 2)) 1/2)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/24 binary64) (*.f64 x x)) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/24 (* -1/720 (pow x 2)))) 1/2)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/720 binary64) (*.f64 x x) #s(literal 1/24 binary64)) x) x) #s(literal 1/2 binary64)) (*.f64 x x) #s(literal 1 binary64))
x
(* -1 (* eps x))
(*.f64 (neg.f64 x) eps)
(* x (+ (* -1 eps) (* 1/6 (* eps (pow x 2)))))
(*.f64 (*.f64 eps (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1 binary64))) x)
(* x (+ (* -1 eps) (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps)))))
(fma.f64 (pow.f64 x #s(literal 3 binary64)) (*.f64 eps (fma.f64 #s(literal -1/120 binary64) (*.f64 x x) #s(literal 1/6 binary64))) (*.f64 (neg.f64 x) eps))
(* x (+ (* -1 eps) (* (pow x 2) (+ (* 1/6 eps) (* (pow x 2) (+ (* -1/120 eps) (* 1/5040 (* eps (pow x 2)))))))))
(*.f64 (fma.f64 eps (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1 binary64)) (*.f64 (pow.f64 x #s(literal 4 binary64)) (*.f64 eps (fma.f64 (*.f64 #s(literal 1/5040 binary64) x) x #s(literal -1/120 binary64))))) x)
(* x (+ 1 (* -1/6 (pow x 2))))
(fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal -1/6 binary64) x)
(* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))
(fma.f64 (pow.f64 x #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64)) x)
(* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))
(fma.f64 (pow.f64 x #s(literal 3 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 x x) #s(literal 1/120 binary64)) x) x) #s(literal 1/6 binary64)) x)
(* -1 x)
(neg.f64 x)
(+ x (* 1/2 eps))
(fma.f64 #s(literal 1/2 binary64) eps x)
(+ (* 1/2 eps) (* x (+ 1 (* -1/4 (* eps x)))))
(fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)
(+ (* 1/2 eps) (* x (+ 1 (* x (+ (* -1/4 eps) (* -1/6 x))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))
(+ 1 (* -1/4 (* eps x)))
(fma.f64 (*.f64 #s(literal -1/4 binary64) eps) x #s(literal 1 binary64))
(* eps x)
(*.f64 eps x)
(+ 1 (* x (+ (* -1/4 eps) (* -1/6 x))))
(fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64))
(* -1/4 eps)
(*.f64 #s(literal -1/4 binary64) eps)
(+ (* -1/4 eps) (* -1/6 x))
(fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps))
(- (cos (+ eps x)) (cos x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(+ (* -1 (* eps (sin x))) (* -1/2 (* (pow eps 2) (cos x))))
(*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))) eps)
(* 1/2 (* eps (cos x)))
(*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64))
(* eps (cos x))
(*.f64 (cos.f64 x) eps)
(cos x)
(cos.f64 x)
(* -1 (* eps (sin x)))
(*.f64 (neg.f64 eps) (sin.f64 x))
(sin x)
(sin.f64 x)
(* -1 (* eps (+ (sin x) (* 1/2 (* eps (cos x))))))
(*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))) eps)
(+ (sin x) (* 1/2 (* eps (cos x))))
(fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))
(* x (+ 1 (* 1/2 (/ eps x))))
(*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x)
(* -1/4 (* eps (pow x 2)))
(*.f64 (*.f64 (*.f64 x x) #s(literal -1/4 binary64)) eps)
(* (pow x 2) (+ (* -1/4 eps) (/ 1 x)))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) eps) x #s(literal 1 binary64)) x)
(* (pow x 2) (+ (* -1/4 eps) (+ (* 1/2 (/ eps (pow x 2))) (/ 1 x))))
(*.f64 x (fma.f64 (*.f64 eps (+.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal -1/4 binary64))) x #s(literal 1 binary64)))
(* -1/4 (* eps x))
(*.f64 (*.f64 #s(literal -1/4 binary64) eps) x)
(* x (+ (* -1/4 eps) (/ 1 x)))
(fma.f64 (*.f64 #s(literal -1/4 binary64) eps) x #s(literal 1 binary64))
(* -1/6 (pow x 3))
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal -1/6 binary64))
(* (pow x 3) (- (* -1/4 (/ eps x)) 1/6))
(*.f64 (-.f64 (*.f64 (/.f64 eps x) #s(literal -1/4 binary64)) #s(literal 1/6 binary64)) (pow.f64 x #s(literal 3 binary64)))
(* (pow x 3) (- (+ (* -1/4 (/ eps x)) (/ 1 (pow x 2))) 1/6))
(*.f64 (-.f64 (/.f64 (fma.f64 #s(literal -1/4 binary64) eps (/.f64 #s(literal 1 binary64) x)) x) #s(literal 1/6 binary64)) (pow.f64 x #s(literal 3 binary64)))
(* (pow x 3) (- (+ (* -1/4 (/ eps x)) (+ (* 1/2 (/ eps (pow x 3))) (/ 1 (pow x 2)))) 1/6))
(*.f64 (-.f64 (/.f64 (fma.f64 #s(literal -1/4 binary64) eps (/.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x)) x) #s(literal 1/6 binary64)) (pow.f64 x #s(literal 3 binary64)))
(* -1/6 (pow x 2))
(*.f64 #s(literal -1/6 binary64) (*.f64 x x))
(* (pow x 2) (- (* -1/4 (/ eps x)) 1/6))
(*.f64 (*.f64 (-.f64 (*.f64 (/.f64 eps x) #s(literal -1/4 binary64)) #s(literal 1/6 binary64)) x) x)
(* (pow x 2) (- (+ (* -1/4 (/ eps x)) (/ 1 (pow x 2))) 1/6))
(*.f64 (-.f64 (/.f64 (fma.f64 #s(literal -1/4 binary64) eps (/.f64 #s(literal 1 binary64) x)) x) #s(literal 1/6 binary64)) (*.f64 x x))
(* -1/6 x)
(*.f64 #s(literal -1/6 binary64) x)
(* x (- (* -1/4 (/ eps x)) 1/6))
(*.f64 (-.f64 (*.f64 (/.f64 eps x) #s(literal -1/4 binary64)) #s(literal 1/6 binary64)) x)
(- (cos (- eps (* -1 x))) (cos x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(* -1 (* x (- (* -1/2 (/ eps x)) 1)))
(*.f64 (neg.f64 x) (-.f64 (*.f64 (/.f64 eps x) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(* (pow x 2) (+ (* -1 (/ (- (* -1/2 (/ eps x)) 1) x)) (* -1/4 eps)))
(*.f64 (fma.f64 #s(literal -1/4 binary64) eps (/.f64 (-.f64 (*.f64 (/.f64 eps x) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (neg.f64 x))) (*.f64 x x))
(* -1 (* x (- (* 1/4 eps) (/ 1 x))))
(*.f64 (neg.f64 x) (-.f64 (*.f64 #s(literal 1/4 binary64) eps) (/.f64 #s(literal 1 binary64) x)))
(* -1 (* (pow x 3) (+ 1/6 (* 1/4 (/ eps x)))))
(*.f64 (fma.f64 (/.f64 eps x) #s(literal -1/4 binary64) #s(literal -1/6 binary64)) (pow.f64 x #s(literal 3 binary64)))
(* -1 (* (pow x 3) (+ 1/6 (* -1 (/ (+ (* -1/4 eps) (/ 1 x)) x)))))
(*.f64 (+.f64 (/.f64 (fma.f64 #s(literal -1/4 binary64) eps (/.f64 #s(literal 1 binary64) x)) x) #s(literal -1/6 binary64)) (pow.f64 x #s(literal 3 binary64)))
(* -1 (* (pow x 3) (+ 1/6 (* -1 (/ (+ (* -1 (/ (- (* -1/2 (/ eps x)) 1) x)) (* -1/4 eps)) x)))))
(*.f64 (+.f64 (/.f64 (fma.f64 #s(literal -1/4 binary64) eps (/.f64 (-.f64 (*.f64 (/.f64 eps x) #s(literal -1/2 binary64)) #s(literal 1 binary64)) (neg.f64 x))) x) #s(literal -1/6 binary64)) (pow.f64 x #s(literal 3 binary64)))
(* (pow x 2) (- (* -1 (/ (- (* 1/4 eps) (/ 1 x)) x)) 1/6))
(*.f64 (-.f64 (/.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) eps) (/.f64 #s(literal 1 binary64) x)) (neg.f64 x)) #s(literal 1/6 binary64)) (*.f64 x x))
(* -1 (* x (+ 1/6 (* 1/4 (/ eps x)))))
(*.f64 (fma.f64 (/.f64 eps x) #s(literal -1/4 binary64) #s(literal -1/6 binary64)) x)
(* eps (- (* -1/2 (* eps (cos x))) (sin x)))
(*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))) eps)
(* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))
(*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps)
(* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))
(*.f64 (-.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) (sin.f64 x) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/24 binary64))) eps (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps)
(* eps (+ (* -1 (sin x)) (* -1/2 (* eps (cos x)))))
(*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))) eps)
(* -1 eps)
(neg.f64 eps)
(+ x (* eps (+ 1/2 (* -1/4 (pow x 2)))))
(fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)
(+ (* eps (+ 1/2 (* -1/4 (pow x 2)))) (* x (+ 1 (* -1/6 (pow x 2)))))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))
(+ 1 (* -1/6 (pow x 2)))
(fma.f64 #s(literal -1/6 binary64) (*.f64 x x) #s(literal 1 binary64))
(+ 1 (+ (* -1/4 (* eps x)) (* -1/6 (pow x 2))))
(fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64))
(* -1/2 (* (pow eps 2) (cos x)))
(*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) eps)
(* (pow eps 2) (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))))
(*.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 x) (/.f64 (neg.f64 (sin.f64 x)) eps)) eps) eps)
(* eps (+ (* 1/2 (cos x)) (/ (sin x) eps)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (cos.f64 x) (/.f64 (sin.f64 x) eps)) eps)
(* eps (+ 1/2 (/ x eps)))
(*.f64 (+.f64 (/.f64 x eps) #s(literal 1/2 binary64)) eps)
(* eps (+ 1/2 (* -1/4 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps)
(* eps (+ 1/2 (+ (* -1/4 (pow x 2)) (/ x eps))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) (+.f64 (/.f64 x eps) #s(literal 1/2 binary64))) eps)
(* eps (+ (* -1/4 x) (/ 1 eps)))
(fma.f64 (*.f64 #s(literal -1/4 binary64) eps) x #s(literal 1 binary64))
(* eps (+ 1/2 (+ (* -1/4 (pow x 2)) (/ (* x (+ 1 (* -1/6 (pow x 2)))) eps))))
(*.f64 (fma.f64 x (fma.f64 #s(literal -1/4 binary64) x (/.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 x x) #s(literal 1 binary64)) eps)) #s(literal 1/2 binary64)) eps)
(* eps (+ (* -1/4 x) (+ (* -1/6 (/ (pow x 2) eps)) (/ 1 eps))))
(*.f64 (fma.f64 #s(literal -1/4 binary64) x (/.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 x x) #s(literal 1 binary64)) eps)) eps)
(* eps (- (* -1/6 (/ x eps)) 1/4))
(*.f64 (-.f64 (*.f64 (/.f64 x eps) #s(literal -1/6 binary64)) #s(literal 1/4 binary64)) eps)
(- (cos (- x (* -1 eps))) (cos x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(* -1 (* eps (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x)))))
(*.f64 (fma.f64 #s(literal 1/2 binary64) (cos.f64 x) (/.f64 (sin.f64 x) eps)) eps)
(* -1 (* eps (- (* -1 (/ x eps)) 1/2)))
(*.f64 (-.f64 (/.f64 x (neg.f64 eps)) #s(literal 1/2 binary64)) (neg.f64 eps))
(* -1 (* eps (- (* 1/4 (pow x 2)) 1/2)))
(*.f64 (-.f64 (*.f64 (*.f64 x x) #s(literal 1/4 binary64)) #s(literal 1/2 binary64)) (neg.f64 eps))
(* -1 (* eps (- (+ (* -1 (/ x eps)) (* 1/4 (pow x 2))) 1/2)))
(*.f64 (-.f64 (*.f64 x (fma.f64 #s(literal 1/4 binary64) x (/.f64 #s(literal -1 binary64) eps))) #s(literal 1/2 binary64)) (neg.f64 eps))
(* -1 (* eps (- (* 1/4 x) (/ 1 eps))))
(*.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) x) (/.f64 #s(literal 1 binary64) eps)) (neg.f64 eps))
(* -1 (* eps (- (+ (* -1 (/ (* x (+ 1 (* -1/6 (pow x 2)))) eps)) (* 1/4 (pow x 2))) 1/2)))
(*.f64 (-.f64 (*.f64 x (fma.f64 #s(literal 1/4 binary64) x (/.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1 binary64)) eps))) #s(literal 1/2 binary64)) (neg.f64 eps))
(* -1 (* eps (+ (* -1 (/ (+ 1 (* -1/6 (pow x 2))) eps)) (* 1/4 x))))
(*.f64 (fma.f64 #s(literal -1/4 binary64) x (/.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 x x) #s(literal 1 binary64)) eps)) eps)
(* -1 (* eps (+ 1/4 (* 1/6 (/ x eps)))))
(*.f64 (fma.f64 (/.f64 x eps) #s(literal -1/6 binary64) #s(literal -1/4 binary64)) eps)

rewrite159.0ms (1.3%)

Memory
-19.8MiB live, 68.5MiB allocated; 8ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
046375
074375
1273371
22019371
09933360
Stop Event
iter limit
node limit
iter limit
Counts
36 → 230
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (neg.f64 eps) (*.f64 (neg.f64 eps) (sin.f64 x))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (neg.f64 eps) (*.f64 (neg.f64 eps) (sin.f64 x)))
(*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps))
#s(literal 1/2 binary64)
(*.f64 (cos.f64 x) eps)
(cos.f64 x)
x
eps
(neg.f64 eps)
(*.f64 (neg.f64 eps) (sin.f64 x))
(sin.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 x) eps)))
#s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 x) eps))
(*.f64 (neg.f64 x) eps)
(neg.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 #s(literal 1/2 binary64) eps x)) (neg.f64 eps)))
(*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 #s(literal 1/2 binary64) eps x)) (neg.f64 eps))
#s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 #s(literal 1/2 binary64) eps x))
(fma.f64 #s(literal 1/2 binary64) eps x)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 eps x) #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
(*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 eps x) #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps))
#s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 eps x) #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps)))
(fma.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 eps x) #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))
(fma.f64 #s(literal -1/4 binary64) (*.f64 eps x) #s(literal 1 binary64))
#s(literal -1/4 binary64)
(*.f64 eps x)
#s(literal 1 binary64)
(*.f64 #s(literal 1/2 binary64) eps)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
(*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps))
#s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))
(fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps))
#s(literal -1/6 binary64)
(*.f64 #s(literal -1/4 binary64) eps)
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))))
(*.f64 (neg.f64 eps) (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x)))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)) (*.f64 (neg.f64 eps) (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) (sin.f64 x)))) (*.f64 (*.f64 (neg.f64 eps) (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) (sin.f64 x))) (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 2 binary64)))) (*.f64 (*.f64 (neg.f64 eps) (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) (sin.f64 x))) (*.f64 (neg.f64 eps) (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) (sin.f64 x)))))
(/.f64 (fma.f64 (neg.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps))) (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64))) (*.f64 (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps))) (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64))) (neg.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 3 binary64))))) (*.f64 (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps))) (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64))) (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps))) (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64))) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps))))
(/.f64 (-.f64 (neg.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 3 binary64))) (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps)) (*.f64 (sin.f64 x) eps)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)) (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 2 binary64)))) (neg.f64 (*.f64 (neg.f64 eps) (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) (sin.f64 x)))))
(/.f64 (neg.f64 (fma.f64 (neg.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 x) eps) eps) #s(literal 3 binary64))) #s(literal 1/8 binary64) (neg.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 3 binary64))))) (neg.f64 (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps))) (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)) (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 2 binary64))) (*.f64 (neg.f64 eps) (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) (sin.f64 x))))
(/.f64 (fma.f64 (neg.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 x) eps) eps) #s(literal 3 binary64))) #s(literal 1/8 binary64) (neg.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 3 binary64)))) (+.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps)) (sin.f64 x)) (neg.f64 eps)))))
(/.f64 (fma.f64 (neg.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 x) eps) eps) #s(literal 3 binary64))) #s(literal 1/8 binary64) (neg.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 3 binary64)))) (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps))) (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64))))
(neg.f64 (fma.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps (*.f64 (sin.f64 x) eps)))
(neg.f64 (fma.f64 (sin.f64 x) eps (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps)))
(fma.f64 (*.f64 (neg.f64 eps) (*.f64 (cos.f64 x) #s(literal 1/2 binary64))) eps (*.f64 (sin.f64 x) (neg.f64 eps)))
(fma.f64 (*.f64 (neg.f64 eps) (cos.f64 x)) (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (sin.f64 x) (neg.f64 eps)))
(fma.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps) (*.f64 (sin.f64 x) (neg.f64 eps)))
(fma.f64 (neg.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64))) eps (*.f64 (sin.f64 x) (neg.f64 eps)))
(fma.f64 (*.f64 (neg.f64 eps) (*.f64 (cos.f64 x) eps)) #s(literal 1/2 binary64) (*.f64 (sin.f64 x) (neg.f64 eps)))
(fma.f64 (*.f64 (cos.f64 x) #s(literal 1/2 binary64)) (*.f64 eps (neg.f64 eps)) (*.f64 (sin.f64 x) (neg.f64 eps)))
(fma.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) (neg.f64 eps) (*.f64 (sin.f64 x) (neg.f64 eps)))
(fma.f64 (sin.f64 x) (neg.f64 eps) (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps)))
(fma.f64 (neg.f64 eps) (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) (*.f64 (sin.f64 x) (neg.f64 eps)))
(fma.f64 (neg.f64 eps) (sin.f64 x) (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps)))
(fma.f64 (*.f64 (cos.f64 x) eps) (*.f64 #s(literal 1/2 binary64) (neg.f64 eps)) (*.f64 (sin.f64 x) (neg.f64 eps)))
(fma.f64 (cos.f64 x) (*.f64 (*.f64 #s(literal 1/2 binary64) eps) (neg.f64 eps)) (*.f64 (sin.f64 x) (neg.f64 eps)))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 eps) (*.f64 (cos.f64 x) eps)) (*.f64 (sin.f64 x) (neg.f64 eps)))
(fma.f64 eps (neg.f64 (sin.f64 x)) (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps)))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)) (*.f64 (neg.f64 eps) (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) (sin.f64 x)))) (/.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 2 binary64)) (*.f64 (neg.f64 eps) (-.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) (sin.f64 x)))))
(-.f64 (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps)) (*.f64 (neg.f64 (sin.f64 x)) (neg.f64 eps)))
(-.f64 (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps)) (*.f64 (sin.f64 x) eps))
(-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (neg.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64))) (neg.f64 eps)))
(-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 #s(literal -1/2 binary64) (*.f64 (neg.f64 eps) (*.f64 (cos.f64 x) eps))))
(-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps))
(+.f64 (/.f64 (neg.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps))) (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)))) (/.f64 (neg.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps))) (pow.f64 (*.f64 (*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps)) (*.f64 (sin.f64 x) (neg.f64 eps)))
(+.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)) (*.f64 (cos.f64 x) eps)))
(*.f64 (*.f64 (cos.f64 x) #s(literal 1/2 binary64)) eps)
(*.f64 (*.f64 #s(literal 1/2 binary64) eps) (cos.f64 x))
(*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64))
(*.f64 (cos.f64 x) (*.f64 #s(literal 1/2 binary64) eps))
(*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps))
(*.f64 eps (*.f64 (cos.f64 x) #s(literal 1/2 binary64)))
#s(literal 1/2 binary64)
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(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)))
(sin.f64 (+.f64 (neg.f64 (neg.f64 x)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (neg.f64 x) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) x))
(cos.f64 (neg.f64 (neg.f64 (neg.f64 x))))
(cos.f64 (neg.f64 (neg.f64 x)))
(cos.f64 (neg.f64 x))
(cos.f64 x)
(+.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
(neg.f64 (neg.f64 eps))
eps
(neg.f64 eps)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (neg.f64 eps) (sin.f64 x))
(*.f64 eps (neg.f64 (sin.f64 x)))
(neg.f64 (*.f64 (sin.f64 x) eps))
(sin.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 x) eps)))
#s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 x) eps))
(*.f64 (neg.f64 x) eps)
(*.f64 (neg.f64 eps) x)
(*.f64 eps (neg.f64 x))
(*.f64 x (neg.f64 eps))
(neg.f64 (*.f64 eps x))
(neg.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 #s(literal 1/2 binary64) eps x)) (neg.f64 eps)))
(*.f64 (neg.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 #s(literal 1/2 binary64) eps x))) eps)
(*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 #s(literal 1/2 binary64) eps x)) (neg.f64 eps))
(*.f64 (neg.f64 eps) #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 #s(literal 1/2 binary64) eps x)))
(neg.f64 (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 #s(literal 1/2 binary64) eps x)) eps))
#s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 #s(literal 1/2 binary64) eps x))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) x)) (*.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) eps) x) (*.f64 x x))) (*.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) eps) x) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) x)))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 3 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 eps eps) (*.f64 x (-.f64 x (*.f64 #s(literal 1/2 binary64) eps)))) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 eps eps) (*.f64 x (-.f64 x (*.f64 #s(literal 1/2 binary64) eps)))) (pow.f64 x #s(literal 3 binary64)))) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 eps eps) (*.f64 x (-.f64 x (*.f64 #s(literal 1/2 binary64) eps)))) (fma.f64 #s(literal 1/4 binary64) (*.f64 eps eps) (*.f64 x (-.f64 x (*.f64 #s(literal 1/2 binary64) eps))))))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 2 binary64))) (-.f64 x (*.f64 #s(literal 1/2 binary64) eps)))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 eps eps) (*.f64 (neg.f64 x) x))) (neg.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) eps) x)))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 eps eps) (*.f64 x (-.f64 x (*.f64 #s(literal 1/2 binary64) eps))))))
(/.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 eps eps) (*.f64 (neg.f64 x) x)) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) x))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) eps) x))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 eps #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (fma.f64 #s(literal 1/4 binary64) (*.f64 eps eps) (*.f64 x (-.f64 x (*.f64 #s(literal 1/2 binary64) eps)))))
(fma.f64 #s(literal 1/2 binary64) eps x)
(fma.f64 eps #s(literal 1/2 binary64) x)
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) x)))
(-.f64 x (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)))
(-.f64 x (*.f64 #s(literal -1/2 binary64) eps))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 3 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 eps eps) (*.f64 x (-.f64 x (*.f64 #s(literal 1/2 binary64) eps))))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 #s(literal 1/4 binary64) (*.f64 eps eps) (*.f64 x (-.f64 x (*.f64 #s(literal 1/2 binary64) eps))))))
(+.f64 (*.f64 #s(literal 1/2 binary64) eps) x)
(+.f64 x (*.f64 #s(literal 1/2 binary64) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
(*.f64 (neg.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps)))) eps)
(*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps))
(*.f64 (neg.f64 eps) #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))))
(neg.f64 (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) eps))
#s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps)))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64)) (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) (*.f64 (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)) (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 2 binary64)))) (*.f64 (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)) (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64))) (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 3 binary64)))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -1/2 binary64) eps) #s(literal 2 binary64))) (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 2 binary64)) (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 3 binary64)) (*.f64 #s(literal -1/8 binary64) (pow.f64 eps #s(literal 3 binary64)))) (+.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) eps) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) (*.f64 #s(literal -1/2 binary64) eps)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 2 binary64)))) (neg.f64 (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 eps #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 2 binary64))) (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 eps #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 3 binary64))) (fma.f64 #s(literal 1/4 binary64) (*.f64 eps eps) (-.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 1/2 binary64)) eps))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 eps #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64))))
(fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))
(fma.f64 #s(literal 1/2 binary64) eps (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x))
(fma.f64 eps #s(literal 1/2 binary64) (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x))
(fma.f64 x (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) (*.f64 #s(literal 1/2 binary64) eps))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64)) (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 2 binary64)) (fma.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))))
(-.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)))
(-.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) (*.f64 #s(literal -1/2 binary64) eps))
(-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (neg.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64))) x))
(-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (neg.f64 x) (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) #s(literal 2 binary64)))))
(+.f64 (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x) (*.f64 #s(literal 1/2 binary64) eps))
(+.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64)) x))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 1 binary64))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 3 binary64)) (fma.f64 #s(literal 1/16 binary64) (pow.f64 (*.f64 eps x) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x))) (*.f64 (fma.f64 #s(literal 1/16 binary64) (pow.f64 (*.f64 eps x) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x))) #s(literal 1 binary64))) (*.f64 (fma.f64 #s(literal 1/16 binary64) (pow.f64 (*.f64 eps x) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x))) (fma.f64 #s(literal 1/16 binary64) (pow.f64 (*.f64 eps x) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x)))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 1 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 eps x) #s(literal 3 binary64)) #s(literal -1/64 binary64) #s(literal 1 binary64))) (neg.f64 (fma.f64 #s(literal 1/16 binary64) (pow.f64 (*.f64 eps x) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 1 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) #s(literal 3 binary64)) #s(literal -1/64 binary64) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x))))
(/.f64 (fma.f64 (pow.f64 (*.f64 eps x) #s(literal 3 binary64)) #s(literal -1/64 binary64) #s(literal 1 binary64)) (fma.f64 #s(literal 1/16 binary64) (pow.f64 (*.f64 eps x) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x))))
(fma.f64 (*.f64 #s(literal -1/4 binary64) x) eps #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/4 binary64) eps) (*.f64 x #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/4 binary64) eps) x #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 1 binary64))
(fma.f64 (*.f64 eps x) #s(literal -1/4 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/4 binary64) (*.f64 (*.f64 eps x) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/4 binary64) (*.f64 eps x) #s(literal 1 binary64))
(fma.f64 eps (*.f64 x #s(literal -1/4 binary64)) #s(literal 1 binary64))
(fma.f64 eps (*.f64 #s(literal -1/4 binary64) x) #s(literal 1 binary64))
(fma.f64 x (*.f64 #s(literal -1/4 binary64) eps) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 1 binary64))) (pow.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 1 binary64)) #s(literal -1 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 #s(literal -1/4 binary64) eps)) x))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (neg.f64 x) eps) #s(literal -1/4 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 eps x)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 3 binary64)) (fma.f64 #s(literal 1/16 binary64) (pow.f64 (*.f64 eps x) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x)))) (pow.f64 (fma.f64 #s(literal 1/16 binary64) (pow.f64 (*.f64 eps x) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x))) #s(literal -1 binary64)))
(+.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x))
#s(literal -1/4 binary64)
(*.f64 eps x)
(*.f64 x eps)
#s(literal 1 binary64)
(*.f64 #s(literal 1/2 binary64) eps)
(*.f64 eps #s(literal 1/2 binary64))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
(*.f64 (neg.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps)))) eps)
(*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps))
(*.f64 (neg.f64 eps) #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))))
(neg.f64 (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) eps))
#s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps)))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)) (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 2 binary64)))) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64))) (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 3 binary64)))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -1/2 binary64) eps) #s(literal 2 binary64))) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 2 binary64)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 3 binary64)) (*.f64 #s(literal -1/8 binary64) (pow.f64 eps #s(literal 3 binary64)))) (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 #s(literal -1/2 binary64) eps) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) (*.f64 #s(literal -1/2 binary64) eps)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 2 binary64)))) (neg.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 eps #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 2 binary64))) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps)))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 eps #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 3 binary64))) (fma.f64 #s(literal 1/4 binary64) (*.f64 eps eps) (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 1/2 binary64)) eps))))
(/.f64 (fma.f64 #s(literal 1/8 binary64) (pow.f64 eps #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64))))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))
(fma.f64 #s(literal 1/2 binary64) eps (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x))
(fma.f64 eps #s(literal 1/2 binary64) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x))
(fma.f64 x (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) (*.f64 #s(literal 1/2 binary64) eps))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))) (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 2 binary64)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal -1/2 binary64) eps))))
(-.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) (*.f64 (neg.f64 eps) #s(literal 1/2 binary64)))
(-.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) (*.f64 #s(literal -1/2 binary64) eps))
(-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (neg.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64))) x))
(-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (neg.f64 x) (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) eps) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal 1/2 binary64) eps) (-.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) #s(literal 2 binary64)))))
(+.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x) (*.f64 #s(literal 1/2 binary64) eps))
(+.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 1 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 1 binary64))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x)) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x)) #s(literal 1 binary64))) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 1 binary64))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 1 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 3 binary64)) #s(literal 1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x)))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) (*.f64 x #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 1 binary64))
(fma.f64 x (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 x (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 1 binary64))) (pow.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 1 binary64)) #s(literal -1 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps))) x))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 x) (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x))) (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x)) #s(literal -1 binary64)))
(+.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) x) #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal 1/4 binary64) eps))) (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal 1/4 binary64) eps)) (pow.f64 (*.f64 #s(literal -1/4 binary64) eps) #s(literal 2 binary64)))) (*.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal 1/4 binary64) eps)) (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal 1/4 binary64) eps))))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) x) #s(literal 3 binary64)) (fma.f64 #s(literal 1/36 binary64) (*.f64 x x) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) (-.f64 (*.f64 #s(literal -1/4 binary64) eps) (*.f64 #s(literal -1/6 binary64) x)))) (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 x x) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) (-.f64 (*.f64 #s(literal -1/4 binary64) eps) (*.f64 #s(literal -1/6 binary64) x)))) (pow.f64 (*.f64 #s(literal -1/4 binary64) eps) #s(literal 3 binary64)))) (*.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 x x) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) (-.f64 (*.f64 #s(literal -1/4 binary64) eps) (*.f64 #s(literal -1/6 binary64) x)))) (fma.f64 #s(literal 1/36 binary64) (*.f64 x x) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) (-.f64 (*.f64 #s(literal -1/4 binary64) eps) (*.f64 #s(literal -1/6 binary64) x))))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) x) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 1/4 binary64) eps) #s(literal 2 binary64))) (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal 1/4 binary64) eps)))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) eps) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -1/6 binary64) x) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal -1/4 binary64) eps) (*.f64 #s(literal -1/6 binary64) x)))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) x) #s(literal 3 binary64)) (*.f64 #s(literal 1/64 binary64) (pow.f64 eps #s(literal 3 binary64)))) (fma.f64 #s(literal 1/36 binary64) (*.f64 x x) (+.f64 (pow.f64 (*.f64 #s(literal 1/4 binary64) eps) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal -1/6 binary64) x) (*.f64 #s(literal 1/4 binary64) eps)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) x) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -1/4 binary64) eps) #s(literal 2 binary64)))) (neg.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal 1/4 binary64) eps))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/64 binary64) (pow.f64 eps #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal -1/6 binary64) x) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 x x) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) (-.f64 (*.f64 #s(literal -1/4 binary64) eps) (*.f64 #s(literal -1/6 binary64) x))))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) x) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal -1/4 binary64) eps) #s(literal 2 binary64))) (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal 1/4 binary64) eps)))
(/.f64 (fma.f64 #s(literal -1/64 binary64) (pow.f64 eps #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal -1/6 binary64) x) #s(literal 3 binary64))) (fma.f64 #s(literal 1/16 binary64) (*.f64 eps eps) (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) x) #s(literal 2 binary64)) (*.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x)))))
(/.f64 (fma.f64 #s(literal -1/64 binary64) (pow.f64 eps #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal -1/6 binary64) x) #s(literal 3 binary64))) (fma.f64 #s(literal 1/36 binary64) (*.f64 x x) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) (-.f64 (*.f64 #s(literal -1/4 binary64) eps) (*.f64 #s(literal -1/6 binary64) x)))))
(fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps))
(fma.f64 #s(literal -1/4 binary64) eps (*.f64 #s(literal -1/6 binary64) x))
(fma.f64 eps #s(literal -1/4 binary64) (*.f64 #s(literal -1/6 binary64) x))
(fma.f64 x #s(literal -1/6 binary64) (*.f64 #s(literal -1/4 binary64) eps))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) x) #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal 1/4 binary64) eps))) (/.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) eps) #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal 1/4 binary64) eps))))
(-.f64 (*.f64 #s(literal -1/6 binary64) x) (*.f64 (neg.f64 eps) #s(literal -1/4 binary64)))
(-.f64 (*.f64 #s(literal -1/6 binary64) x) (*.f64 #s(literal 1/4 binary64) eps))
(-.f64 (*.f64 #s(literal -1/4 binary64) eps) (*.f64 #s(literal 1/6 binary64) x))
(-.f64 (*.f64 #s(literal -1/4 binary64) eps) (*.f64 (neg.f64 x) #s(literal -1/6 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) x) #s(literal 3 binary64)) (fma.f64 #s(literal 1/36 binary64) (*.f64 x x) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) (-.f64 (*.f64 #s(literal -1/4 binary64) eps) (*.f64 #s(literal -1/6 binary64) x))))) (/.f64 (pow.f64 (*.f64 #s(literal -1/4 binary64) eps) #s(literal 3 binary64)) (fma.f64 #s(literal 1/36 binary64) (*.f64 x x) (*.f64 (*.f64 #s(literal -1/4 binary64) eps) (-.f64 (*.f64 #s(literal -1/4 binary64) eps) (*.f64 #s(literal -1/6 binary64) x))))))
(+.f64 (*.f64 #s(literal -1/6 binary64) x) (*.f64 #s(literal -1/4 binary64) eps))
(+.f64 (*.f64 #s(literal -1/4 binary64) eps) (*.f64 #s(literal -1/6 binary64) x))
#s(literal -1/6 binary64)
(*.f64 #s(literal -1/4 binary64) eps)
(*.f64 eps #s(literal -1/4 binary64))

eval40.0ms (0.3%)

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

Compiled 13 967 to 1 725 computations (87.6% saved)

prune43.0ms (0.4%)

Memory
-33.0MiB live, 22.9MiB allocated; 5ms collecting garbage
Pruning

18 alts after pruning (11 fresh and 7 done)

PrunedKeptTotal
New3528360
Fresh235
Picked235
Done044
Total35618374
Accuracy
100.0%
Counts
374 → 18
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.5%
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
49.4%
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
48.8%
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
99.0%
#s(approx (- (cos (+ x eps)) (cos x)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (neg.f64 eps) #s(approx (* (neg eps) (sin x)) (*.f64 (fma.f64 eps (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1 binary64)) (*.f64 (pow.f64 x #s(literal 4 binary64)) (*.f64 eps (fma.f64 (*.f64 #s(literal 1/5040 binary64) x) x #s(literal -1/120 binary64))))) x))))
99.2%
#s(approx (- (cos (+ x eps)) (cos x)) (fma.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps)) (neg.f64 eps) (*.f64 (neg.f64 eps) (sin.f64 x))))
99.4%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps)))
99.2%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (fma.f64 (*.f64 #s(approx (cos x) #s(literal 1 binary64)) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps)))
78.1%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
99.0%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
98.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)) (neg.f64 eps)))
98.8%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(approx (+ (* -1/6 x) (* -1/4 eps)) (*.f64 #s(literal -1/6 binary64) x)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
98.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 #s(literal 1/2 binary64) eps x)) (neg.f64 eps)))
98.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) #s(approx (+ (* 1/2 eps) x) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x))) (neg.f64 eps)))
98.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) #s(approx (+ (* 1/2 eps) x) (*.f64 (+.f64 (/.f64 x eps) #s(literal 1/2 binary64)) eps))) (neg.f64 eps)))
98.7%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (fma.f64 (fma.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
50.0%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
77.8%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (*.f64 eps (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1 binary64))) x)))
77.8%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 x) eps)))
Compiler

Compiled 810 to 550 computations (32.1% saved)

simplify0.0ms (0%)

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

series28.0ms (0.2%)

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

6 calls:

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

simplify145.0ms (1.2%)

Memory
-37.9MiB live, 56.4MiB allocated; 3ms collecting garbage
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0258870
1898833
22993794
36770794
08355734
Stop Event
iter limit
node limit
Counts
83 → 81
Calls
Call 1
Inputs
(- (cos eps) 1)
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
(* -1/2 (pow eps 2))
(+ (* -1 (* eps x)) (* -1/2 (pow eps 2)))
(+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* 1/4 (* (pow eps 2) x)))))
(+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* x (+ (* 1/6 (* eps x)) (* 1/4 (pow eps 2)))))))
(* 1/2 eps)
(+ (* -1/4 (* eps (pow x 2))) (* 1/2 eps))
(+ (* 1/2 eps) (* (pow x 2) (+ (* -1/4 eps) (* 1/48 (* eps (pow x 2))))))
(+ (* 1/2 eps) (* (pow x 2) (+ (* -1/4 eps) (* (pow x 2) (+ (* -1/1440 (* eps (pow x 2))) (* 1/48 eps))))))
1/2
(+ 1/2 (* -1/4 (pow x 2)))
(pow x 2)
x
(* -1 (* eps x))
(* x (+ (* -1 eps) (* 1/6 (* eps (pow x 2)))))
(* x (+ (* -1 eps) (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps)))))
(* x (+ (* -1 eps) (* (pow x 2) (+ (* 1/6 eps) (* (pow x 2) (+ (* -1/120 eps) (* 1/5040 (* eps (pow x 2)))))))))
(* x (+ 1 (* -1/6 (pow x 2))))
(* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))
(* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))
(+ x (* 1/2 eps))
(+ (* 1/2 eps) (* x (+ 1 (* -1/4 (* eps x)))))
(+ (* 1/2 eps) (* x (+ 1 (* x (+ (* -1/4 eps) (* -1/6 x))))))
(* 1/2 (/ eps x))
(/ (+ x (* 1/2 eps)) x)
(/ eps x)
(* -1 eps)
(- (* 1/4 (* (pow eps 2) x)) eps)
(* (pow eps 2) x)
(* eps x)
(- (cos (+ eps x)) (cos x))
(+ (* -1 (* eps (sin x))) (* -1/2 (* (pow eps 2) (cos x))))
(* 1/2 (* eps (cos x)))
(* -1/4 (* eps (pow x 2)))
(* (pow x 2) (+ (* -1/4 eps) (* 1/2 (/ eps (pow x 2)))))
(* -1/4 (pow x 2))
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/4))
(* -1 (* eps (sin x)))
(sin x)
(* -1 (* eps (+ (sin x) (* 1/2 (* eps (cos x))))))
(+ (sin x) (* 1/2 (* eps (cos x))))
(* (pow x 2) (+ (* -1/4 eps) (/ 1 x)))
(* (pow x 2) (+ (* -1/4 eps) (+ (* 1/2 (/ eps (pow x 2))) (/ 1 x))))
(* x (+ 1 (* 1/2 (/ eps x))))
1
(+ 1 (* 1/2 (/ eps x)))
(* 1/4 (* (pow eps 2) (pow x 2)))
(* (pow x 2) (+ (* -1 (/ eps x)) (* 1/4 (pow eps 2))))
(* (pow x 2) (- (+ (* -1/2 (/ (pow eps 2) (pow x 2))) (* 1/4 (pow eps 2))) (/ eps x)))
(* 1/4 (* (pow eps 2) x))
(* x (+ (* -1 (/ eps x)) (* 1/4 (pow eps 2))))
(- (cos (- eps (* -1 x))) (cos x))
(* (pow x 2) (+ (* -1 (/ (- (* -1/2 (/ eps x)) 1) x)) (* -1/4 eps)))
(* -1 (* x (- (* -1/2 (/ eps x)) 1)))
(* (pow x 2) (+ (* -1 (/ (+ eps (* 1/2 (/ (pow eps 2) x))) x)) (* 1/4 (pow eps 2))))
(* -1 (* x (+ (* -1/4 (pow eps 2)) (/ eps x))))
(* eps (- (* -1/2 (* eps (cos x))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))
(* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))
(* eps (+ (* -1 (sin x)) (* -1/2 (* eps (cos x)))))
(* eps (+ 1/2 (* -1/4 (pow x 2))))
eps
(pow eps 2)
(+ x (* eps (+ 1/2 (* -1/4 (pow x 2)))))
(* eps (+ (* -1 x) (* eps (- (* 1/4 (pow x 2)) 1/2))))
(* eps (- (* 1/4 (* eps x)) 1))
(* -1/2 (* (pow eps 2) (cos x)))
(* (pow eps 2) (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))))
(* eps (+ (* 1/2 (cos x)) (/ (sin x) eps)))
(* eps (+ 1/2 (+ (* -1/4 (pow x 2)) (/ x eps))))
(* eps (+ 1/2 (/ x eps)))
(* eps (+ (/ 1 eps) (* 1/2 (/ 1 x))))
(* (pow eps 2) (- (* 1/4 (pow x 2)) 1/2))
(* (pow eps 2) (- (+ (* -1 (/ x eps)) (* 1/4 (pow x 2))) 1/2))
(* (pow eps 2) (- (* 1/4 x) (/ 1 eps)))
(- (cos (- x (* -1 eps))) (cos x))
(* -1 (* eps (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x)))))
(* -1 (* eps (+ (* -1 (+ 1/2 (* -1/4 (pow x 2)))) (* -1 (/ x eps)))))
(* -1 (* eps (- (* -1 (/ x eps)) 1/2)))
(* eps (+ (* 1/2 (/ 1 x)) (/ 1 eps)))
Outputs
(- (cos eps) 1)
(-.f64 (cos.f64 eps) #s(literal 1 binary64))
(- (+ (cos eps) (* -1 (* x (sin eps)))) 1)
(-.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) x #s(literal 1 binary64)))
(- (+ (cos eps) (* x (- (* x (+ 1/2 (* -1/2 (cos eps)))) (sin eps)))) 1)
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 eps) #s(literal 1/2 binary64)) x) (sin.f64 eps)) x (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(- (+ (cos eps) (* x (- (* x (+ 1/2 (+ (* -1/2 (cos eps)) (* 1/6 (* x (sin eps)))))) (sin eps)))) 1)
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (sin.f64 eps) x) (fma.f64 #s(literal -1/2 binary64) (cos.f64 eps) #s(literal 1/2 binary64))) x) (sin.f64 eps)) x (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(* -1/2 (pow eps 2))
(*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))
(+ (* -1 (* eps x)) (* -1/2 (pow eps 2)))
(*.f64 eps (-.f64 (*.f64 #s(literal -1/2 binary64) eps) x))
(+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* 1/4 (* (pow eps 2) x)))))
(fma.f64 (*.f64 eps eps) (fma.f64 (*.f64 #s(literal 1/4 binary64) x) x #s(literal -1/2 binary64)) (*.f64 (neg.f64 x) eps))
(+ (* -1/2 (pow eps 2)) (* x (+ (* -1 eps) (* x (+ (* 1/6 (* eps x)) (* 1/4 (pow eps 2)))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) eps (*.f64 (fma.f64 (*.f64 eps (fma.f64 #s(literal 1/4 binary64) eps (*.f64 #s(literal 1/6 binary64) x))) x (neg.f64 eps)) x))
(* 1/2 eps)
(*.f64 #s(literal 1/2 binary64) eps)
(+ (* -1/4 (* eps (pow x 2))) (* 1/2 eps))
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps)
(+ (* 1/2 eps) (* (pow x 2) (+ (* -1/4 eps) (* 1/48 (* eps (pow x 2))))))
(fma.f64 (*.f64 #s(literal 1/48 binary64) eps) (pow.f64 x #s(literal 4 binary64)) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps))
(+ (* 1/2 eps) (* (pow x 2) (+ (* -1/4 eps) (* (pow x 2) (+ (* -1/1440 (* eps (pow x 2))) (* 1/48 eps))))))
(fma.f64 (pow.f64 x #s(literal 4 binary64)) (*.f64 eps (fma.f64 (*.f64 x x) #s(literal -1/1440 binary64) #s(literal 1/48 binary64))) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 (pow x 2)))
(fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(pow x 2)
(*.f64 x x)
x
(* -1 (* eps x))
(*.f64 (neg.f64 x) eps)
(* x (+ (* -1 eps) (* 1/6 (* eps (pow x 2)))))
(*.f64 (*.f64 eps (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1 binary64))) x)
(* x (+ (* -1 eps) (* (pow x 2) (+ (* -1/120 (* eps (pow x 2))) (* 1/6 eps)))))
(fma.f64 (pow.f64 x #s(literal 3 binary64)) (*.f64 eps (fma.f64 (*.f64 x x) #s(literal -1/120 binary64) #s(literal 1/6 binary64))) (*.f64 (neg.f64 x) eps))
(* x (+ (* -1 eps) (* (pow x 2) (+ (* 1/6 eps) (* (pow x 2) (+ (* -1/120 eps) (* 1/5040 (* eps (pow x 2)))))))))
(*.f64 (fma.f64 (pow.f64 x #s(literal 4 binary64)) (*.f64 eps (fma.f64 (*.f64 #s(literal 1/5040 binary64) x) x #s(literal -1/120 binary64))) (*.f64 eps (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1 binary64)))) x)
(* x (+ 1 (* -1/6 (pow x 2))))
(fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal -1/6 binary64) x)
(* x (+ 1 (* (pow x 2) (- (* 1/120 (pow x 2)) 1/6))))
(fma.f64 (pow.f64 x #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64)) x)
(* x (+ 1 (* (pow x 2) (- (* (pow x 2) (+ 1/120 (* -1/5040 (pow x 2)))) 1/6))))
(fma.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 (pow.f64 x #s(literal 4 binary64)) #s(literal -1/5040 binary64) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 x x)) #s(literal 1/6 binary64))) x)
(+ x (* 1/2 eps))
(fma.f64 #s(literal 1/2 binary64) eps x)
(+ (* 1/2 eps) (* x (+ 1 (* -1/4 (* eps x)))))
(fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)
(+ (* 1/2 eps) (* x (+ 1 (* x (+ (* -1/4 eps) (* -1/6 x))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))
(* 1/2 (/ eps x))
(*.f64 (/.f64 eps x) #s(literal 1/2 binary64))
(/ (+ x (* 1/2 eps)) x)
(/.f64 (fma.f64 #s(literal 1/2 binary64) eps x) x)
(/ eps x)
(/.f64 eps x)
(* -1 eps)
(neg.f64 eps)
(- (* 1/4 (* (pow eps 2) x)) eps)
(fma.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64) (neg.f64 eps))
(* (pow eps 2) x)
(*.f64 (*.f64 eps x) eps)
(* eps x)
(*.f64 eps x)
(- (cos (+ eps x)) (cos x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(+ (* -1 (* eps (sin x))) (* -1/2 (* (pow eps 2) (cos x))))
(*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))) eps)
(* 1/2 (* eps (cos x)))
(*.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64))
(* -1/4 (* eps (pow x 2)))
(*.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) eps) x) x)
(* (pow x 2) (+ (* -1/4 eps) (* 1/2 (/ eps (pow x 2)))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps)
(* -1/4 (pow x 2))
(*.f64 (*.f64 x x) #s(literal -1/4 binary64))
(* (pow x 2) (- (* 1/2 (/ 1 (pow x 2))) 1/4))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 x x)) #s(literal 1/4 binary64)) x) x)
(* -1 (* eps (sin x)))
(*.f64 (neg.f64 eps) (sin.f64 x))
(sin x)
(sin.f64 x)
(* -1 (* eps (+ (sin x) (* 1/2 (* eps (cos x))))))
(*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))) eps)
(+ (sin x) (* 1/2 (* eps (cos x))))
(fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))
(* (pow x 2) (+ (* -1/4 eps) (/ 1 x)))
(*.f64 (fma.f64 (*.f64 #s(literal -1/4 binary64) eps) x #s(literal 1 binary64)) x)
(* (pow x 2) (+ (* -1/4 eps) (+ (* 1/2 (/ eps (pow x 2))) (/ 1 x))))
(fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)
(* x (+ 1 (* 1/2 (/ eps x))))
(fma.f64 #s(literal 1/2 binary64) eps x)
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (/ eps x)))
(/.f64 (fma.f64 #s(literal 1/2 binary64) eps x) x)
(* 1/4 (* (pow eps 2) (pow x 2)))
(*.f64 (*.f64 (*.f64 (*.f64 x x) eps) eps) #s(literal 1/4 binary64))
(* (pow x 2) (+ (* -1 (/ eps x)) (* 1/4 (pow eps 2))))
(*.f64 (fma.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64) (neg.f64 eps)) x)
(* (pow x 2) (- (+ (* -1/2 (/ (pow eps 2) (pow x 2))) (* 1/4 (pow eps 2))) (/ eps x)))
(*.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) (-.f64 (/.f64 (/.f64 #s(literal -1/2 binary64) x) x) #s(literal -1/4 binary64))) (/.f64 eps x)) x) x)
(* 1/4 (* (pow eps 2) x))
(*.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64))
(* x (+ (* -1 (/ eps x)) (* 1/4 (pow eps 2))))
(fma.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64) (neg.f64 eps))
(- (cos (- eps (* -1 x))) (cos x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(* (pow x 2) (+ (* -1 (/ (- (* -1/2 (/ eps x)) 1) x)) (* -1/4 eps)))
(fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)
(* -1 (* x (- (* -1/2 (/ eps x)) 1)))
(fma.f64 #s(literal 1/2 binary64) eps x)
(* (pow x 2) (+ (* -1 (/ (+ eps (* 1/2 (/ (pow eps 2) x))) x)) (* 1/4 (pow eps 2))))
(*.f64 (*.f64 (-.f64 (*.f64 (*.f64 eps eps) (-.f64 (/.f64 (/.f64 #s(literal -1/2 binary64) x) x) #s(literal -1/4 binary64))) (/.f64 eps x)) x) x)
(* -1 (* x (+ (* -1/4 (pow eps 2)) (/ eps x))))
(fma.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64) (neg.f64 eps))
(* eps (- (* -1/2 (* eps (cos x))) (sin x)))
(*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))) eps)
(* eps (- (* eps (+ (* -1/2 (cos x)) (* 1/6 (* eps (sin x))))) (sin x)))
(*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (sin.f64 x) eps) #s(literal 1/6 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps)
(* eps (- (* eps (+ (* -1/2 (cos x)) (* eps (- (* 1/24 (* eps (cos x))) (* -1/6 (sin x)))))) (sin x)))
(*.f64 (-.f64 (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) (sin.f64 x) (*.f64 #s(literal 1/24 binary64) (*.f64 (cos.f64 x) eps))) eps (*.f64 #s(literal -1/2 binary64) (cos.f64 x))) eps) (sin.f64 x)) eps)
(* eps (+ (* -1 (sin x)) (* -1/2 (* eps (cos x)))))
(*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))) eps)
(* eps (+ 1/2 (* -1/4 (pow x 2))))
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps)
eps
(pow eps 2)
(*.f64 eps eps)
(+ x (* eps (+ 1/2 (* -1/4 (pow x 2)))))
(fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)
(* eps (+ (* -1 x) (* eps (- (* 1/4 (pow x 2)) 1/2))))
(*.f64 (neg.f64 (fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)) eps)
(* eps (- (* 1/4 (* eps x)) 1))
(*.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) eps) x) #s(literal 1 binary64)) eps)
(* -1/2 (* (pow eps 2) (cos x)))
(*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 x)) eps) eps)
(* (pow eps 2) (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x))))
(*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))) eps)
(* eps (+ (* 1/2 (cos x)) (/ (sin x) eps)))
(fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))
(* eps (+ 1/2 (+ (* -1/4 (pow x 2)) (/ x eps))))
(fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)
(* eps (+ 1/2 (/ x eps)))
(fma.f64 #s(literal 1/2 binary64) eps x)
(* eps (+ (/ 1 eps) (* 1/2 (/ 1 x))))
(/.f64 (fma.f64 #s(literal 1/2 binary64) eps x) x)
(* (pow eps 2) (- (* 1/4 (pow x 2)) 1/2))
(*.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/4 binary64) x) x) #s(literal 1/2 binary64)) (*.f64 eps eps))
(* (pow eps 2) (- (+ (* -1 (/ x eps)) (* 1/4 (pow x 2))) 1/2))
(*.f64 (neg.f64 (fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)) eps)
(* (pow eps 2) (- (* 1/4 x) (/ 1 eps)))
(*.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) x) (/.f64 #s(literal 1 binary64) eps)) (*.f64 eps eps))
(- (cos (- x (* -1 eps))) (cos x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(* -1 (* eps (+ (* -1 (/ (sin x) eps)) (* -1/2 (cos x)))))
(fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x))
(* -1 (* eps (+ (* -1 (+ 1/2 (* -1/4 (pow x 2)))) (* -1 (/ x eps)))))
(fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)
(* -1 (* eps (- (* -1 (/ x eps)) 1/2)))
(*.f64 (-.f64 (/.f64 x (neg.f64 eps)) #s(literal 1/2 binary64)) (neg.f64 eps))
(* eps (+ (* 1/2 (/ 1 x)) (/ 1 eps)))
(/.f64 (fma.f64 #s(literal 1/2 binary64) eps x) x)

rewrite141.0ms (1.2%)

Memory
15.2MiB live, 60.2MiB allocated; 2ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
052462
077458
1302446
22348446
08134432
Stop Event
iter limit
node limit
iter limit
Counts
37 → 269
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (fma.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps)) (neg.f64 eps) (*.f64 (neg.f64 eps) (sin.f64 x))))
(fma.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps)) (neg.f64 eps) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps))
(*.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps)
(fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(*.f64 x x)
x
#s(literal -1/4 binary64)
#s(literal 1/2 binary64)
eps
(neg.f64 eps)
(*.f64 (neg.f64 eps) (sin.f64 x))
(sin.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
#s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))
(*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))
(*.f64 eps eps)
#s(literal -1/2 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)) (neg.f64 eps)))
(*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)) (neg.f64 eps))
#s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x))
(fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) #s(approx (+ (* 1/2 eps) x) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x))) (neg.f64 eps)))
(*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) #s(approx (+ (* 1/2 eps) x) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x))) (neg.f64 eps))
#s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) #s(approx (+ (* 1/2 eps) x) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x)))
#s(approx (+ (* 1/2 eps) x) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x))
(*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x)
(fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64))
(/.f64 eps x)
#s(literal 1 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (fma.f64 (fma.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (fma.f64 (fma.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
(fma.f64 (fma.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))
(fma.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64) (neg.f64 eps))
(*.f64 (*.f64 eps x) eps)
(*.f64 eps x)
#s(literal 1/4 binary64)
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (+.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (sin.f64 x))))
(*.f64 (neg.f64 eps) (+.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (sin.f64 x)))
(*.f64 (neg.f64 eps) (+.f64 (sin.f64 x) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 3 binary64)) (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)))) (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 2 binary64))) (*.f64 (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)))) (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 2 binary64))) (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 3 binary64)))) (*.f64 (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)))) (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 2 binary64))) (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)))) (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 2 binary64))) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 2 binary64)) (*.f64 (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))) (*.f64 (sin.f64 x) eps)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 2 binary64)) (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 2 binary64)))) (neg.f64 (*.f64 (neg.f64 eps) (-.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (sin.f64 x)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)))) (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 2 binary64)) (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 2 binary64))) (*.f64 (neg.f64 eps) (-.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (sin.f64 x))))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))) (sin.f64 x)) (neg.f64 eps)))))
(/.f64 (+.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 3 binary64)) (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)))) (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 2 binary64))))
(neg.f64 (fma.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps (*.f64 (sin.f64 x) eps)))
(neg.f64 (fma.f64 (sin.f64 x) eps (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps)))
(fma.f64 (neg.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))) eps (*.f64 (sin.f64 x) (neg.f64 eps)))
(fma.f64 (sin.f64 x) (neg.f64 eps) (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))))
(fma.f64 (neg.f64 eps) (sin.f64 x) (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))))
(fma.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (*.f64 (sin.f64 x) (neg.f64 eps)))
(fma.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (neg.f64 eps) (*.f64 (sin.f64 x) (neg.f64 eps)))
(fma.f64 eps (neg.f64 (sin.f64 x)) (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 2 binary64)) (*.f64 (neg.f64 eps) (-.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (sin.f64 x)))) (/.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 2 binary64)) (*.f64 (neg.f64 eps) (-.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (sin.f64 x)))))
(-.f64 (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))) (*.f64 (neg.f64 (sin.f64 x)) (neg.f64 eps)))
(-.f64 (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))) (*.f64 (sin.f64 x) eps))
(-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (neg.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))) (neg.f64 eps)))
(-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 3 binary64)) (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)))) (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 (sin.f64 x) eps) #s(literal 3 binary64)) (fma.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)))) (pow.f64 (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps) #s(literal 2 binary64)))))
(+.f64 (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))) (*.f64 (sin.f64 x) (neg.f64 eps)))
(+.f64 (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (neg.f64 eps) #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))))
#s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))
(*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)
(*.f64 eps (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64))) #s(literal 1/4 binary64)) eps) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 x x)) #s(literal 1/2 binary64)))
(/.f64 (*.f64 (fma.f64 #s(literal -1/64 binary64) (pow.f64 x #s(literal 6 binary64)) #s(literal 1/8 binary64)) eps) (fma.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 x x) #s(literal -1/8 binary64)))))
(/.f64 (*.f64 eps (-.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64))) #s(literal 1/4 binary64))) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 x x)) #s(literal 1/2 binary64)))
(/.f64 (*.f64 eps (fma.f64 #s(literal -1/64 binary64) (pow.f64 x #s(literal 6 binary64)) #s(literal 1/8 binary64))) (fma.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 x x) #s(literal -1/8 binary64)))))
(fma.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 x x)) eps (*.f64 #s(literal 1/2 binary64) eps))
(fma.f64 #s(literal 1/2 binary64) eps (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 x x)) eps))
(fma.f64 #s(literal 1/2 binary64) eps (*.f64 eps (*.f64 #s(literal -1/4 binary64) (*.f64 x x))))
(fma.f64 eps (*.f64 #s(literal -1/4 binary64) (*.f64 x x)) (*.f64 #s(literal 1/2 binary64) eps))
(fma.f64 eps #s(literal 1/2 binary64) (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 x x)) eps))
(fma.f64 eps #s(literal 1/2 binary64) (*.f64 eps (*.f64 #s(literal -1/4 binary64) (*.f64 x x))))
(+.f64 (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 x x)) eps) (*.f64 #s(literal 1/2 binary64) eps))
(+.f64 (*.f64 eps (*.f64 #s(literal -1/4 binary64) (*.f64 x x))) (*.f64 #s(literal 1/2 binary64) eps))
(+.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 x x)) eps))
(+.f64 (*.f64 #s(literal 1/2 binary64) eps) (*.f64 eps (*.f64 #s(literal -1/4 binary64) (*.f64 x x))))
(/.f64 (fma.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 x #s(literal 6 binary64))) (fma.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 x x) #s(literal -1/8 binary64)))) (*.f64 (fma.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 x x) #s(literal -1/8 binary64)))) #s(literal 1/8 binary64))) (*.f64 (fma.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 x x) #s(literal -1/8 binary64)))) (fma.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 x x) #s(literal -1/8 binary64))))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64)))) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/4 binary64) (*.f64 x x))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64))) #s(literal 1/4 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 x x)) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/64 binary64) (pow.f64 x #s(literal 6 binary64)) #s(literal 1/8 binary64))) (neg.f64 (fma.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 x x) #s(literal -1/8 binary64))))))
(/.f64 (-.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64))) #s(literal 1/4 binary64)) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 x x)) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 #s(literal -1/64 binary64) (pow.f64 x #s(literal 6 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64))) (*.f64 (*.f64 x x) #s(literal -1/8 binary64)))))
(/.f64 (fma.f64 #s(literal -1/64 binary64) (pow.f64 x #s(literal 6 binary64)) #s(literal 1/8 binary64)) (fma.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 x x) #s(literal -1/8 binary64)))))
(fma.f64 (*.f64 #s(literal -1/4 binary64) (neg.f64 x)) (neg.f64 x) #s(literal 1/2 binary64))
(fma.f64 (*.f64 #s(literal -1/4 binary64) x) x #s(literal 1/2 binary64))
(fma.f64 (neg.f64 x) (*.f64 (neg.f64 x) #s(literal -1/4 binary64)) #s(literal 1/2 binary64))
(fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64))
(fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64))
(fma.f64 x (*.f64 #s(literal -1/4 binary64) x) #s(literal 1/2 binary64))
(-.f64 (/.f64 (*.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 x x)) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 x x)) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (*.f64 x x)) #s(literal -1/4 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 x) (*.f64 #s(literal -1/4 binary64) x)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/4 binary64) (*.f64 x x)))
(+.f64 (/.f64 (*.f64 #s(literal -1/64 binary64) (pow.f64 x #s(literal 6 binary64))) (fma.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 x x) #s(literal -1/8 binary64))))) (/.f64 #s(literal 1/8 binary64) (fma.f64 #s(literal 1/16 binary64) (pow.f64 x #s(literal 4 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 x x) #s(literal -1/8 binary64))))))
(+.f64 (*.f64 #s(literal -1/4 binary64) (*.f64 x x)) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/4 binary64) (*.f64 x x)))
(*.f64 (exp.f64 (log.f64 x)) (exp.f64 (log.f64 x)))
(*.f64 (neg.f64 (neg.f64 (neg.f64 x))) (neg.f64 (neg.f64 (neg.f64 x))))
(*.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 x)))
(*.f64 (neg.f64 x) (neg.f64 x))
(*.f64 x x)
(pow.f64 (exp.f64 (log.f64 x)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 x)) #s(literal 2 binary64))
(pow.f64 (neg.f64 x) #s(literal 2 binary64))
(pow.f64 (*.f64 x x) #s(literal 1 binary64))
(pow.f64 x #s(literal 2 binary64))
(neg.f64 (*.f64 x (neg.f64 x)))
(neg.f64 (*.f64 (neg.f64 x) x))
(sqrt.f64 (pow.f64 x #s(literal 4 binary64)))
(fabs.f64 (*.f64 x (neg.f64 x)))
(fabs.f64 (*.f64 (neg.f64 x) x))
(fabs.f64 (neg.f64 (*.f64 x x)))
(fabs.f64 (*.f64 x x))
(+.f64 (cosh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 x) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (neg.f64 x)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (neg.f64 (neg.f64 x))) (sqrt.f64 (neg.f64 (neg.f64 x))))
(*.f64 (sqrt.f64 (neg.f64 x)) (sqrt.f64 (neg.f64 x)))
(*.f64 (sqrt.f64 x) (sqrt.f64 x))
(pow.f64 (neg.f64 x) #s(literal 1 binary64))
(pow.f64 (*.f64 x x) #s(literal 1/2 binary64))
(pow.f64 x #s(literal 1 binary64))
(sqrt.f64 (*.f64 x x))
(fabs.f64 (neg.f64 (neg.f64 x)))
(fabs.f64 (neg.f64 x))
(fabs.f64 x)
(exp.f64 (/.f64 (*.f64 (log.f64 x) #s(literal 2 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 x) #s(literal 1 binary64)))
x
#s(literal -1/4 binary64)
#s(literal 1/2 binary64)
(*.f64 (sqrt.f64 (neg.f64 eps)) (sqrt.f64 (neg.f64 eps)))
(*.f64 (sqrt.f64 eps) (sqrt.f64 eps))
(pow.f64 (*.f64 eps eps) #s(literal 1/2 binary64))
(pow.f64 (neg.f64 eps) #s(literal 1 binary64))
(pow.f64 eps #s(literal 1 binary64))
(neg.f64 (neg.f64 eps))
(sqrt.f64 (*.f64 eps eps))
(fabs.f64 (neg.f64 eps))
(fabs.f64 eps)
(exp.f64 (/.f64 (*.f64 (log.f64 eps) #s(literal 2 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 eps) #s(literal 1 binary64)))
eps
(neg.f64 eps)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (neg.f64 eps) (sin.f64 x))
(*.f64 eps (neg.f64 (sin.f64 x)))
(neg.f64 (*.f64 (sin.f64 x) eps))
(sin.f64 x)
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps))))
#s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)))
(*.f64 (*.f64 #s(literal -1/2 binary64) (neg.f64 eps)) (neg.f64 eps))
(*.f64 (*.f64 #s(literal -1/2 binary64) eps) eps)
(*.f64 #s(literal -1/2 binary64) (*.f64 eps eps))
(*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))
(*.f64 (neg.f64 eps) (*.f64 (neg.f64 eps) #s(literal -1/2 binary64)))
(*.f64 eps (*.f64 #s(literal -1/2 binary64) eps))
(*.f64 (exp.f64 (log.f64 eps)) (exp.f64 (log.f64 eps)))
(*.f64 (neg.f64 eps) (neg.f64 eps))
(*.f64 eps eps)
(pow.f64 (exp.f64 (log.f64 eps)) #s(literal 2 binary64))
(pow.f64 (*.f64 eps eps) #s(literal 1 binary64))
(pow.f64 (neg.f64 eps) #s(literal 2 binary64))
(pow.f64 eps #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 eps) eps))
(sqrt.f64 (pow.f64 eps #s(literal 4 binary64)))
(fabs.f64 (*.f64 (neg.f64 eps) eps))
(fabs.f64 (*.f64 eps eps))
(+.f64 (cosh.f64 (*.f64 (log.f64 eps) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 eps) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (neg.f64 eps)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 eps) #s(literal 2 binary64)))
#s(literal -1/2 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps x)) (neg.f64 eps)))
(*.f64 (neg.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps x))) eps)
(*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps x)) (neg.f64 eps))
(*.f64 (neg.f64 eps) #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps x)))
(neg.f64 (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps x)) eps))
#s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps x))
(/.f64 (fma.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 3 binary64)) (fma.f64 x (-.f64 x (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64))) (*.f64 (fma.f64 x (-.f64 x (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64))) (pow.f64 x #s(literal 3 binary64)))) (*.f64 (fma.f64 x (-.f64 x (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64))) (fma.f64 x (-.f64 x (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64))) (-.f64 x (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) x)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (fma.f64 x (-.f64 x (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)) (*.f64 x x)) (-.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) x))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) x))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (fma.f64 x (-.f64 x (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64))))
(fma.f64 (sqrt.f64 (neg.f64 (neg.f64 x))) (sqrt.f64 (neg.f64 (neg.f64 x))) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))
(fma.f64 (sqrt.f64 (neg.f64 x)) (sqrt.f64 (neg.f64 x)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))
(fma.f64 (sqrt.f64 x) (sqrt.f64 x) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))
(fma.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps x)
(fma.f64 eps (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) x)
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) x)))
(-.f64 x (*.f64 (neg.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64))) eps))
(-.f64 x (*.f64 (neg.f64 eps) (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 3 binary64)) (fma.f64 x (-.f64 x (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 x (-.f64 x (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) (pow.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) #s(literal 2 binary64)))))
(+.f64 (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps) x)
(+.f64 x (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) #s(approx (+ (* 1/2 eps) x) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x))) (neg.f64 eps)))
(*.f64 (neg.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) #s(approx (+ (* 1/2 eps) x) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x)))) eps)
(*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) #s(approx (+ (* 1/2 eps) x) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x))) (neg.f64 eps))
(*.f64 (neg.f64 eps) #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) #s(approx (+ (* 1/2 eps) x) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x))))
(neg.f64 (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) #s(approx (+ (* 1/2 eps) x) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x))) eps))
#s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) #s(approx (+ (* 1/2 eps) x) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x)))
#s(approx (+ (* 1/2 eps) x) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x))
(*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x)
(*.f64 x (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) x) (-.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(/.f64 (*.f64 (fma.f64 (pow.f64 (/.f64 eps x) #s(literal 3 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) x) (fma.f64 (pow.f64 (/.f64 eps x) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)))))
(/.f64 (*.f64 x (-.f64 (pow.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (-.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(/.f64 (*.f64 x (fma.f64 (pow.f64 (/.f64 eps x) #s(literal 3 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64))) (fma.f64 (pow.f64 (/.f64 eps x) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)))))
(fma.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) x (*.f64 #s(literal 1 binary64) x))
(fma.f64 #s(literal 1 binary64) x (*.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) x))
(fma.f64 x (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) (*.f64 x #s(literal 1 binary64)))
(fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (/.f64 eps x) #s(literal 1/2 binary64))))
(+.f64 (*.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) x) (*.f64 #s(literal 1 binary64) x))
(+.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) x))
(+.f64 (*.f64 x (*.f64 (/.f64 eps x) #s(literal 1/2 binary64))) (*.f64 x #s(literal 1 binary64)))
(+.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 x (*.f64 (/.f64 eps x) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (fma.f64 (pow.f64 (/.f64 eps x) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)))) (*.f64 (fma.f64 (pow.f64 (/.f64 eps x) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)))) #s(literal 1 binary64))) (*.f64 (fma.f64 (pow.f64 (/.f64 eps x) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)))) (fma.f64 (pow.f64 (/.f64 eps x) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 eps x) #s(literal 1/2 binary64))))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 eps x) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (/.f64 eps x) #s(literal 3 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64))) (neg.f64 (fma.f64 (pow.f64 (/.f64 eps x) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 eps x) #s(literal 1/2 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(/.f64 (fma.f64 (pow.f64 (/.f64 eps x) #s(literal 3 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)))))
(/.f64 (fma.f64 (pow.f64 (/.f64 eps x) #s(literal 3 binary64)) #s(literal 1/8 binary64) #s(literal 1 binary64)) (fma.f64 (pow.f64 (/.f64 eps x) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)))))
(fma.f64 (fabs.f64 (/.f64 eps x)) #s(literal 1/2 binary64) #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 #s(literal 1 binary64) (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 1 binary64))
(fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) (fabs.f64 (*.f64 (/.f64 eps x) #s(literal 1 binary64))) #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) (fabs.f64 (/.f64 eps x)) #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (/.f64 eps x) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) (/.f64 eps x) #s(literal 1 binary64))
(fma.f64 eps (fabs.f64 (/.f64 #s(literal 1/2 binary64) x)) #s(literal 1 binary64))
(fma.f64 eps (/.f64 #s(literal 1/2 binary64) x) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 1 binary64))) (pow.f64 (-.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (/.f64 eps x)) #s(literal 1/2 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/2 binary64) (/.f64 eps x)))
(+.f64 (/.f64 (pow.f64 (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (fma.f64 (pow.f64 (/.f64 eps x) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 eps x) #s(literal 1/2 binary64))))) (pow.f64 (fma.f64 (pow.f64 (/.f64 eps x) #s(literal 2 binary64)) #s(literal 1/4 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 eps x) #s(literal 1/2 binary64)))) #s(literal -1 binary64)))
(+.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)))
(/.f64 (neg.f64 eps) (neg.f64 x))
(/.f64 eps (neg.f64 (neg.f64 x)))
(/.f64 eps x)
(neg.f64 (/.f64 (neg.f64 eps) x))
#s(literal 1 binary64)
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (fma.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)))))
#s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (fma.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 2 binary64))) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 2 binary64))) (*.f64 #s(literal -1/8 binary64) (pow.f64 eps #s(literal 6 binary64))))) (*.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 eps #s(literal 4 binary64)) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x)))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 3 binary64)) (neg.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 eps #s(literal 6 binary64))))) (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 2 binary64)) (fma.f64 (pow.f64 eps #s(literal 4 binary64)) #s(literal 1/4 binary64) (*.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) (*.f64 (*.f64 (neg.f64 eps) eps) #s(literal -1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 2 binary64)) (*.f64 (pow.f64 eps #s(literal 4 binary64)) #s(literal 1/4 binary64)))) (neg.f64 (fma.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/2 binary64)))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 eps #s(literal 6 binary64)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 2 binary64)) (*.f64 (pow.f64 eps #s(literal 4 binary64)) #s(literal 1/4 binary64))) (fma.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 eps #s(literal 6 binary64)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 3 binary64))) (fma.f64 (pow.f64 eps #s(literal 4 binary64)) #s(literal 1/4 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal -1/2 binary64)) (*.f64 eps eps)))))
(/.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 eps #s(literal 6 binary64)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 2 binary64))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (neg.f64 eps)) (neg.f64 eps) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x))
(fma.f64 (*.f64 #s(literal -1/2 binary64) eps) eps (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x))
(fma.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 eps eps) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x))
(fma.f64 (*.f64 eps eps) #s(literal -1/2 binary64) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x))
(fma.f64 (neg.f64 eps) (*.f64 (neg.f64 eps) #s(literal -1/2 binary64)) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x))
(fma.f64 eps (*.f64 #s(literal -1/2 binary64) eps) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x))
(fma.f64 x (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 2 binary64)) (fma.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/2 binary64)))) (/.f64 (*.f64 (pow.f64 eps #s(literal 4 binary64)) #s(literal 1/4 binary64)) (fma.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal 1/2 binary64)))))
(-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) (*.f64 (neg.f64 eps) (*.f64 #s(literal -1/2 binary64) eps)))
(-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) (*.f64 (*.f64 eps eps) #s(literal 1/2 binary64)))
(-.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) (*.f64 (*.f64 (neg.f64 eps) eps) #s(literal -1/2 binary64)))
(-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (*.f64 (neg.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps))) x))
(-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (*.f64 (neg.f64 x) (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 3 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 2 binary64)))) (/.f64 (*.f64 #s(literal -1/8 binary64) (pow.f64 eps #s(literal 6 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (-.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) #s(literal 2 binary64)))))
(+.f64 (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x) (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)))
(+.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 eps eps)) (*.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps)) x))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)) #s(literal 3 binary64)) (fma.f64 (pow.f64 (*.f64 (*.f64 eps x) eps) #s(literal 2 binary64)) #s(literal 1/16 binary64) (*.f64 (neg.f64 eps) (-.f64 (neg.f64 eps) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps))))) (*.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 eps x) eps) #s(literal 2 binary64)) #s(literal 1/16 binary64) (*.f64 (neg.f64 eps) (-.f64 (neg.f64 eps) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps))))) (pow.f64 eps #s(literal 3 binary64)))) (*.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 eps x) eps) #s(literal 2 binary64)) #s(literal 1/16 binary64) (*.f64 (neg.f64 eps) (-.f64 (neg.f64 eps) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps))))) (fma.f64 (pow.f64 (*.f64 (*.f64 eps x) eps) #s(literal 2 binary64)) #s(literal 1/16 binary64) (*.f64 (neg.f64 eps) (-.f64 (neg.f64 eps) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)))))))
(/.f64 (-.f64 (*.f64 eps eps) (pow.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)) #s(literal 2 binary64))) (-.f64 (neg.f64 eps) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 eps x) eps) #s(literal 2 binary64)) #s(literal 1/16 binary64) (*.f64 (neg.f64 eps) eps))) (neg.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)) (neg.f64 eps))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (*.f64 eps x) eps) #s(literal 3 binary64)) (pow.f64 eps #s(literal 3 binary64)))) (neg.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 eps x) eps) #s(literal 2 binary64)) #s(literal 1/16 binary64) (*.f64 (neg.f64 eps) (-.f64 (neg.f64 eps) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 eps x) eps) #s(literal 2 binary64)) #s(literal 1/16 binary64) (*.f64 (neg.f64 eps) eps)) (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)) (neg.f64 eps)))
(/.f64 (fma.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (*.f64 eps x) eps) #s(literal 3 binary64)) (pow.f64 eps #s(literal 3 binary64))) (fma.f64 eps eps (-.f64 (pow.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)) #s(literal 2 binary64)) (*.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)) (neg.f64 eps)))))
(/.f64 (fma.f64 #s(literal 1/64 binary64) (pow.f64 (*.f64 (*.f64 eps x) eps) #s(literal 3 binary64)) (pow.f64 eps #s(literal 3 binary64))) (fma.f64 (pow.f64 (*.f64 (*.f64 eps x) eps) #s(literal 2 binary64)) #s(literal 1/16 binary64) (*.f64 (neg.f64 eps) (-.f64 (neg.f64 eps) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps))))))
(fma.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 eps x)) eps (neg.f64 eps))
(fma.f64 (*.f64 #s(literal 1/4 binary64) eps) (*.f64 eps x) (neg.f64 eps))
(fma.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps) (neg.f64 eps))
(fma.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64) (neg.f64 eps))
(fma.f64 (*.f64 eps x) (*.f64 #s(literal 1/4 binary64) eps) (neg.f64 eps))
(fma.f64 eps (*.f64 (*.f64 eps x) #s(literal 1/4 binary64)) (neg.f64 eps))
(fma.f64 eps (*.f64 x (*.f64 #s(literal 1/4 binary64) eps)) (neg.f64 eps))
(fma.f64 x (*.f64 eps (*.f64 #s(literal 1/4 binary64) eps)) (neg.f64 eps))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)) (neg.f64 eps))) (/.f64 (*.f64 eps eps) (-.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)) (neg.f64 eps))))
(-.f64 (neg.f64 eps) (*.f64 #s(literal -1/4 binary64) (*.f64 (*.f64 eps x) eps)))
(-.f64 (neg.f64 eps) (*.f64 (neg.f64 (*.f64 (*.f64 eps x) eps)) #s(literal 1/4 binary64)))
(-.f64 (neg.f64 eps) (*.f64 (neg.f64 (*.f64 eps x)) (*.f64 #s(literal 1/4 binary64) eps)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)) #s(literal 3 binary64)) (fma.f64 (pow.f64 (*.f64 (*.f64 eps x) eps) #s(literal 2 binary64)) #s(literal 1/16 binary64) (*.f64 (neg.f64 eps) (-.f64 (neg.f64 eps) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)))))) (/.f64 (pow.f64 eps #s(literal 3 binary64)) (fma.f64 (pow.f64 (*.f64 (*.f64 eps x) eps) #s(literal 2 binary64)) #s(literal 1/16 binary64) (*.f64 (neg.f64 eps) (-.f64 (neg.f64 eps) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)))))))
(+.f64 (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)) (neg.f64 eps))
(+.f64 (neg.f64 eps) (*.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 eps x) eps)))
(*.f64 (*.f64 eps x) eps)
(*.f64 (*.f64 eps eps) x)
(*.f64 eps (*.f64 eps x))
(*.f64 x (*.f64 eps eps))
(*.f64 eps x)
(*.f64 x eps)
#s(literal 1/4 binary64)

eval91.0ms (0.8%)

Memory
15.5MiB live, 65.0MiB allocated; 5ms collecting garbage
Compiler

Compiled 26 766 to 2 970 computations (88.9% saved)

prune20.0ms (0.2%)

Memory
-13.6MiB live, 33.3MiB allocated; 2ms collecting garbage
Pruning

17 alts after pruning (8 fresh and 9 done)

PrunedKeptTotal
New6734677
Fresh246
Picked325
Done077
Total67817695
Accuracy
100.0%
Counts
695 → 17
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.5%
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
49.4%
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
48.8%
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
47.4%
#s(approx (- (cos (+ x eps)) (cos x)) (fma.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps)) (neg.f64 eps) (*.f64 (neg.f64 eps) (sin.f64 (*.f64 (sqrt.f64 x) (sqrt.f64 x))))))
99.4%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (fma.f64 (*.f64 (cos.f64 x) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps)))
99.2%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (fma.f64 (*.f64 #s(approx (cos x) #s(literal 1 binary64)) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps)))
78.1%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
99.0%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
98.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (*.f64 (fabs.f64 x) x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)) (neg.f64 eps)))
98.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)) (neg.f64 eps)))
98.8%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(approx (+ (* -1/6 x) (* -1/4 eps)) (*.f64 #s(literal -1/6 binary64) x)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
98.5%
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 #s(literal 1/2 binary64) eps x)) (neg.f64 eps)))
99.4%
#s(approx (- (cos (+ x eps)) (cos x)) (neg.f64 (fma.f64 (sin.f64 x) eps (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps))))
98.8%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (fma.f64 #s(approx (+ (* (* (* eps x) eps) 1/4) (neg eps)) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
50.0%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
77.8%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (*.f64 eps (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1 binary64))) x)))
77.8%
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 x) eps)))
Compiler

Compiled 1 176 to 467 computations (60.3% saved)

regimes19.0ms (0.2%)

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

3 calls:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes17.0ms (0.1%)

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

3 calls:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes15.0ms (0.1%)

Memory
-37.2MiB live, 10.0MiB allocated; 1ms collecting garbage
Counts
19 → 1
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 x) eps)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 #s(literal 1/2 binary64) eps x)) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (fma.f64 #s(approx (+ (* (* (* eps x) eps) 1/4) (neg eps)) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (*.f64 eps (fma.f64 (*.f64 #s(literal 1/6 binary64) x) x #s(literal -1 binary64))) x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) #s(approx (+ (* 1/2 eps) x) (*.f64 (+.f64 (/.f64 x eps) #s(literal 1/2 binary64)) eps))) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (*.f64 (fabs.f64 x) x) #s(literal -1/4 binary64) #s(literal 1/2 binary64)) eps x)) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) #s(approx (+ (* 1/2 eps) x) (*.f64 (fma.f64 (/.f64 eps x) #s(literal 1/2 binary64) #s(literal 1 binary64)) x))) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 eps x) #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(approx (+ (* -1/6 x) (* -1/4 eps)) (*.f64 #s(literal -1/6 binary64) x)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (+ (* (* (cos x) eps) 1/2) (sin x)) (neg eps)) (fma.f64 (fma.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (fma.f64 (fma.f64 (*.f64 (*.f64 eps x) eps) #s(literal 1/4 binary64) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) (-.f64 (cos.f64 eps) #s(literal 1 binary64)))
(-.f64 (cos.f64 (+.f64 x eps)) #s(approx (cos x) #s(literal 1 binary64)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (neg.f64 eps) (sin.f64 x)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (fma.f64 (*.f64 #s(approx (cos x) #s(literal 1 binary64)) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps)))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (fma.f64 (*.f64 #s(approx (cos x) #s(literal 1 binary64)) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps)))
Calls

3 calls:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes13.0ms (0.1%)

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

3 calls:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes11.0ms (0.1%)

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

3 calls:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes9.0ms (0.1%)

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

3 calls:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes5.0ms (0%)

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

3 calls:

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

Compiled 9 to 10 computations (-11.1% saved)

regimes4.0ms (0%)

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

Total -17.8b remaining (-125%)

Threshold costs -17.8b (-125%)

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

3 calls:

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

Compiled 9 to 10 computations (-11.1% saved)

simplify52.0ms (0.4%)

Memory
-33.5MiB live, 13.9MiB allocated; 1ms collecting garbage
Algorithm
egg-herbie
Iterations

Useful iterations: 7 (0.0ms)

IterNodesCost
078234
1150232
2304232
3613232
41044232
51659232
62668232
74320231
Stop Event
node limit
Calls
Call 1
Inputs
#s(approx (- (cos (+ x eps)) (cos x)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (neg.f64 eps) (*.f64 (neg.f64 eps) (sin.f64 x))))
#s(approx (- (cos (+ x eps)) (cos x)) (neg.f64 (fma.f64 (sin.f64 x) eps (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (fma.f64 (*.f64 #s(approx (cos x) #s(literal 1 binary64)) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(approx (+ (* -1/6 x) (* -1/4 eps)) (*.f64 #s(literal -1/6 binary64) x)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (fma.f64 #s(approx (+ (* (* (* eps x) eps) 1/4) (neg eps)) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 #s(literal 1/2 binary64) eps x)) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 x) eps)))
Outputs
#s(approx (- (cos (+ x eps)) (cos x)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 x) eps)) (neg.f64 eps) (*.f64 (neg.f64 eps) (sin.f64 x))))
#s(approx (- (cos (+ x eps)) (cos x)) (neg.f64 (fma.f64 (sin.f64 x) eps (*.f64 #s(approx (* 1/2 (* (cos x) eps)) (*.f64 (fma.f64 #s(literal -1/4 binary64) (*.f64 x x) #s(literal 1/2 binary64)) eps)) eps))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 (fma.f64 (*.f64 #s(approx (cos x) #s(literal 1 binary64)) eps) #s(literal 1/2 binary64) (sin.f64 x)) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) x (*.f64 #s(literal -1/4 binary64) eps)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 (fma.f64 #s(approx (+ (* -1/6 x) (* -1/4 eps)) (*.f64 #s(literal -1/6 binary64) x)) x #s(literal 1 binary64)) x (*.f64 #s(literal 1/2 binary64) eps))) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (+ (* (* 1/2 (* (cos x) eps)) (neg eps)) (* (neg eps) (sin x))) (fma.f64 #s(approx (+ (* (* (* eps x) eps) 1/4) (neg eps)) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) #s(literal -1/2 binary64)))))
#s(approx (- (cos (+ x eps)) (cos x)) (*.f64 #s(approx (+ (* (* (cos x) eps) 1/2) (sin x)) (fma.f64 #s(literal 1/2 binary64) eps x)) (neg.f64 eps)))
#s(approx (- (cos (+ x eps)) (cos x)) #s(approx (* (neg eps) (sin x)) (*.f64 (neg.f64 x) eps)))

derivations874.0ms (7.3%)

Memory
34.2MiB live, 81.5MiB allocated; 52ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0258870
1898833
22993794
36770794
08355734
052462
077458
1302446
22348446
08134432
0105296
1308293
2779293
32454292
46244292
08035272
0281942
1938925
22980893
36118893
08108826
03191139
110991094
238691061
08111975
028139
046139
1170139
21431139
08208139
Stop Event
fuel
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
Compiler

Compiled 235 to 81 computations (65.5% saved)

preprocess74.0ms (0.6%)

Memory
-11.1MiB live, 37.9MiB allocated; 9ms collecting garbage
Compiler

Compiled 518 to 204 computations (60.6% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...