Details

Time bar (total: 17.8s)

analyze0.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
99.9%0%0.1%1
Compiler

Compiled 10 to 7 computations (30% saved)

sample4.3s (23.9%)

Results
2.0s2133×body2048valid
1.8s4027×body1024valid
348.0ms1353×body512valid
116.0ms742×body256valid
28.0msbody4096valid

preprocess23.0ms (0.1%)

Algorithm
egg-herbie
Rules
76×fma-def_binary64
57×fma-neg_binary64
27×cancel-sign-sub-inv_binary64
24×sub-neg_binary64
18×distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01122
11722
22522
33822
45322
58122
614122
719922
828422
935522
1040722
1141122
022
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 eps))
Outputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 eps))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 eps))
Compiler

Compiled 11 to 8 computations (27.3% saved)

simplify12.0ms (0.1%)

Algorithm
egg-herbie
Rules
39×fma-def_binary64
32×fma-neg_binary64
15×cancel-sign-sub-inv_binary64
12×sub-neg_binary64
10×distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
11011
21511
32211
43111
54811
68611
712311
816711
920311
1022911
1123111
Stop Event
saturated
Counts
1 → 1
Calls
Call 1
Inputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Outputs
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))

eval0.0ms (0%)

Compiler

Compiled 9 to 6 computations (33.3% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
41.2b
Counts
2 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
41.2b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 9 to 6 computations (33.3% saved)

localize11.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
1.5b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
2.4b
(cos.f64 (+.f64 x eps))
Compiler

Compiled 20 to 6 computations (70% saved)

series6.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite85.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
588×unpow-prod-down_binary64
457×fma-def_binary64
445×log-prod_binary64
271×pow-prod-down_binary64
266×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0717
117417
2276217
Stop Event
node limit
Counts
2 → 183
Calls
Call 1
Inputs
(cos.f64 (+.f64 x eps))
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (+.f64 x eps)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (+.f64 x eps)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((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)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 x eps))))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 x eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 2) 3) (cbrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 (+.f64 x eps)) (cbrt.f64 (cos.f64 (+.f64 x eps)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (sqrt.f64 (cos.f64 (+.f64 x eps)))) 1/3) (cbrt.f64 (sqrt.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2) (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)) (cos.f64 (-.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 x eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (+.f64 x eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (pow.f64 (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (pow.f64 (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) 1) (pow.f64 (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2))) 1) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (*.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2) 1/3) (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 1/3) (cbrt.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) -2) 1/3) (cbrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2) 3) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 -2) 2) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) (neg.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) (neg.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (neg.f64 (cos.f64 x)) 3)) (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (-.f64 (pow.f64 (neg.f64 (cos.f64 x)) 2) (*.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (neg.f64 (cos.f64 x)) 2)) (-.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (/.f64 1 (exp.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (cos.f64 x))) (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (neg.f64 (cbrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (neg.f64 (sqrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (cos.f64 x))) 2) (cbrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (cos.f64 x))) (sqrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (cos.f64 x) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))))

simplify68.0ms (0.4%)

Algorithm
egg-herbie
Rules
813×fma-neg_binary64
459×neg-mul-1_binary64
395×fma-def_binary64
369×associate-+l+_binary64
297×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
068630
1191612
2512583
32203567
47547567
Stop Event
node limit
Counts
231 → 219
Calls
Call 1
Inputs
(cos.f64 eps)
(+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps))))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps)))))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps))))))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 x)
(+.f64 (cos.f64 x) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
(-.f64 (cos.f64 eps) 1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
Outputs
(cos.f64 eps)
(+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps))))
(+.f64 (cos.f64 eps) (*.f64 (neg.f64 x) (sin.f64 eps)))
(-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps)))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps)))))
(+.f64 (cos.f64 eps) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (*.f64 (neg.f64 x) (sin.f64 eps))))
(+.f64 (-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps))) (*.f64 (cos.f64 eps) (*.f64 (*.f64 x x) -1/2)))
(+.f64 (cos.f64 eps) (*.f64 x (-.f64 (*.f64 (cos.f64 eps) (*.f64 -1/2 x)) (sin.f64 eps))))
(+.f64 (cos.f64 eps) (*.f64 x (fma.f64 (cos.f64 eps) (*.f64 x -1/2) (neg.f64 (sin.f64 eps)))))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps))))))
(+.f64 (cos.f64 eps) (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (*.f64 (neg.f64 x) (sin.f64 eps)))))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 (cos.f64 eps) (*.f64 (*.f64 x x) -1/2)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x)))))
(+.f64 (cos.f64 eps) (fma.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x x)) (*.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x)))))
(fma.f64 (+.f64 1 (*.f64 x (*.f64 x -1/2))) (cos.f64 eps) (*.f64 (sin.f64 eps) (-.f64 (*.f64 1/6 (pow.f64 x 3)) x)))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 (+.f64 eps x))
(cos.f64 x)
(+.f64 (cos.f64 x) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (cos.f64 x) (*.f64 (neg.f64 eps) (sin.f64 x)))
(-.f64 (cos.f64 x) (*.f64 eps (sin.f64 x)))
(+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (cos.f64 x)) (*.f64 eps (sin.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (+.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (cos.f64 x)) (*.f64 eps (sin.f64 x))))
(fma.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/6 (pow.f64 eps 3)) (neg.f64 eps))))
(fma.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
(cos.f64 (+.f64 eps x))
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (*.f64 (neg.f64 x) (sin.f64 eps)) 1))
(+.f64 (cos.f64 eps) (fma.f64 (neg.f64 x) (sin.f64 eps) -1))
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (neg.f64 x) -1))
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(+.f64 (+.f64 (cos.f64 eps) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2))))) -1)
(+.f64 (fma.f64 (*.f64 x x) (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 (sin.f64 eps) (neg.f64 x))) (+.f64 (cos.f64 eps) -1))
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps))))
(+.f64 (cos.f64 eps) (fma.f64 x (fma.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2) (neg.f64 (sin.f64 eps))) -1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(+.f64 (+.f64 (cos.f64 eps) (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (*.f64 x x) (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)))))) -1)
(+.f64 (+.f64 (*.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x)))) (+.f64 (cos.f64 eps) -1))
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x)) (fma.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) -1)))
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (-.f64 (*.f64 1/6 (pow.f64 x 3)) x) (fma.f64 (*.f64 x x) (fma.f64 (cos.f64 eps) -1/2 1/2) -1)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(*.f64 (neg.f64 eps) (sin.f64 x))
(*.f64 eps (neg.f64 (sin.f64 x)))
(*.f64 (sin.f64 x) (neg.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x)))
(-.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))) (*.f64 eps (sin.f64 x)))
(-.f64 (*.f64 (*.f64 eps eps) (*.f64 -1/2 (cos.f64 x))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) (*.f64 eps (sin.f64 x)))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/6 (pow.f64 eps 3)) (neg.f64 eps))))
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x)))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))))) (*.f64 eps (sin.f64 x))))
(fma.f64 (cos.f64 x) (*.f64 1/24 (pow.f64 eps 4)) (fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/6 (pow.f64 eps 3)) (neg.f64 eps)))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps)))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))

eval56.0ms (0.3%)

Compiler

Compiled 3964 to 1199 computations (69.8% saved)

prune85.0ms (0.5%)

Pruning

38 alts after pruning (37 fresh and 1 done)

PrunedKeptTotal
New18237219
Fresh000
Picked011
Done000
Total18238220
Error
0.2b
Counts
220 → 38
Alt Table
Click to see full alt table
StatusErrorProgram
24.6b
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
46.5b
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
31.7b
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
40.4b
(-.f64 (cos.f64 eps) (cos.f64 x))
24.3b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
41.3b
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))
31.7b
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
24.7b
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
24.3b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
31.4b
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x)))
24.7b
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
41.2b
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
41.3b
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
24.3b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
31.4b
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
55.2b
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
36.5b
(*.f64 (sin.f64 x) (neg.f64 eps))
35.0b
(fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
24.3b
(-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
41.2b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
24.3b
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
41.3b
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
55.7b
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)
18.3b
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
55.4b
(-.f64 (cos.f64 x) (cos.f64 x))
41.4b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
24.8b
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
41.2b
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
40.1b
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
41.3b
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))
41.3b
(-.f64 (log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))) (cos.f64 x))
31.7b
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps)))))
24.9b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
40.8b
(-.f64 (cos.f64 eps) 1)
17.0b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
41.3b
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3))
41.3b
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
42.2b
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
Compiler

Compiled 1197 to 810 computations (32.3% saved)

localize29.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(+.f64 x (+.f64 x eps))
0.0b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
0.3b
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))
2.5b
(sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))
Compiler

Compiled 88 to 34 computations (61.4% saved)

series15.0ms (0.1%)

Counts
4 → 96
Calls

24 calls:

TimeVariablePointExpression
2.0ms
x
@inf
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))
1.0ms
x
@inf
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
1.0ms
eps
@0
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))
1.0ms
x
@0
(sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))
1.0ms
x
@0
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))

rewrite85.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
687×fma-def_binary64
550×log-prod_binary64
304×fma-neg_binary64
222×expm1-udef_binary64
222×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01568
135228
2526428
Stop Event
node limit
Counts
4 → 205
Calls
Call 1
Inputs
(sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
(+.f64 x (+.f64 x eps))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 0) (cos.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 0) (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 0)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 0)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 x 1/2)) (cos.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 x eps)))) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 x eps))) (cos.f64 (*.f64 1/2 x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 x eps))) (sin.f64 (*.f64 1/2 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps)))) (cbrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps)))))) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (*.f64 1/2 eps)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (*.f64 1/2 eps)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (*.f64 1/2 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) (cbrt.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) (sqrt.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 2)) (sqrt.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (*.f64 1/2 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (*.f64 1/2 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sin.f64 (*.f64 1/2 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (*.f64 1/2 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 (*.f64 1/2 eps))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1/2 (*.f64 1/2 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 1/2 (/.f64 (cos.f64 (*.f64 1/2 (+.f64 eps eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (cbrt.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))) -2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sqrt.f64 -2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 4 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 -2) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 x eps) x)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 eps 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 eps (/.f64 0 eps))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 x x) (-.f64 0 eps)) (/.f64 (pow.f64 (+.f64 x eps) 2) (-.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 eps 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 eps)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 eps eps) (/.f64 1 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 eps) (sqrt.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 (+.f64 x eps) eps (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (+.f64 x eps) eps (*.f64 x x)) (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 0 eps) (*.f64 eps (-.f64 0 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 eps eps) (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 eps (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 eps eps) eps)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (fma.f64 (+.f64 x eps) eps (*.f64 x x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (+.f64 (pow.f64 (+.f64 x eps) 2) (-.f64 (*.f64 x x) (*.f64 x (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 eps 3) (*.f64 eps eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 eps (-.f64 0 eps)) (-.f64 0 eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 eps eps)) (neg.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3))) (neg.f64 (fma.f64 (+.f64 x eps) eps (*.f64 x x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 eps (-.f64 0 eps))) (neg.f64 (-.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (pow.f64 eps 3)) (neg.f64 (*.f64 eps eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 x eps) 3) (pow.f64 x 3)) (+.f64 (pow.f64 (+.f64 x eps) 2) (fma.f64 x x (*.f64 x (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 x eps) 2) (*.f64 x x)) eps)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (*.f64 eps eps)) (-.f64 0 eps))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 eps 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 eps) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 eps) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 eps 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 eps eps))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (+.f64 x eps)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (exp.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 x) (+.f64 1 (expm1.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 x)) (+.f64 1 (expm1.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (exp.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 x eps)) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 x eps)) (exp.f64 (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (exp.f64 (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (+.f64 x eps)) (/.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (+.f64 x eps))) (/.f64 1 (exp.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 eps 3))))) (#(struct:change #<rule egg-rr> (2) ((x . eps)))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 (+.f64 x eps) eps)) (sqrt.f64 (*.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 (+.f64 x eps) eps)) (*.f64 (sqrt.f64 x) (sqrt.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (*.f64 x eps)) (sqrt.f64 (*.f64 (+.f64 x eps) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (*.f64 (sqrt.f64 x) (sqrt.f64 eps)) (sqrt.f64 (*.f64 (+.f64 x eps) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 x 1 (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x eps) 1 x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 x eps) 1 (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 eps 1 (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 x (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 x eps) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 x eps) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 eps (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (/.f64 1 eps) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (/.f64 1 eps) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (/.f64 1 eps) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (/.f64 1 eps) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps eps) (/.f64 1 eps) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 eps) (pow.f64 (cbrt.f64 eps) 2) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 eps) 2) (cbrt.f64 eps) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 x) (cbrt.f64 (*.f64 x x)) (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x) (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 x eps)) (pow.f64 (cbrt.f64 (+.f64 x eps)) 2) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (+.f64 x eps)) (pow.f64 (cbrt.f64 (+.f64 x eps)) 2) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 x eps)) 2) (cbrt.f64 (+.f64 x eps)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 x eps)) 2) (cbrt.f64 (+.f64 x eps)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 eps) (sqrt.f64 eps) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 x) (sqrt.f64 x) (-.f64 eps x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 (+.f64 x eps)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 (+.f64 x eps)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 (+.f64 x eps) eps (*.f64 x x))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 (+.f64 x eps) eps (*.f64 x x))) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 (+.f64 x eps) eps (*.f64 x x))) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 (+.f64 x eps) eps (*.f64 x x))) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 (+.f64 x eps) 3)) (/.f64 1 (fma.f64 (+.f64 x eps) eps (*.f64 x x))) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 eps 3) (/.f64 1 (*.f64 eps eps)) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 eps 3)) (/.f64 1 (fma.f64 x x (*.f64 eps (-.f64 eps x)))) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (pow.f64 x 3) (pow.f64 eps 3)) (/.f64 1 (fma.f64 x x (*.f64 eps (-.f64 eps x)))) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 eps (-.f64 0 eps)) (/.f64 1 (-.f64 0 eps)) (neg.f64 (/.f64 0 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) x)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (fma.f64 (neg.f64 x) 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 x)) (cbrt.f64 (*.f64 x x)) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (+.f64 (neg.f64 x) x))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (-.f64 (sqrt.f64 (+.f64 x eps)) (sqrt.f64 x)) (neg.f64 (/.f64 0 eps)))))))

simplify76.0ms (0.4%)

Algorithm
egg-herbie
Rules
862×fma-def_binary64
568×distribute-rgt-out_binary64
516×associate-*l*_binary64
500×associate-*r*_binary64
473×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01131592
13351560
29841357
340671325
Stop Event
node limit
Counts
301 → 266
Calls
Call 1
Inputs
(sin.f64 (*.f64 1/2 eps))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps)))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 x)
(+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(*.f64 1/2 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)) (+.f64 (*.f64 1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
eps
(+.f64 (*.f64 2 x) eps)
(+.f64 (*.f64 2 x) eps)
(+.f64 (*.f64 2 x) eps)
(*.f64 2 x)
(+.f64 eps (*.f64 2 x))
(+.f64 eps (*.f64 2 x))
(+.f64 eps (*.f64 2 x))
(*.f64 2 x)
(+.f64 eps (*.f64 2 x))
(+.f64 eps (*.f64 2 x))
(+.f64 eps (*.f64 2 x))
(*.f64 2 x)
(+.f64 eps (*.f64 2 x))
(+.f64 eps (*.f64 2 x))
(+.f64 eps (*.f64 2 x))
eps
(+.f64 (*.f64 2 x) eps)
(+.f64 (*.f64 2 x) eps)
(+.f64 (*.f64 2 x) eps)
eps
(+.f64 (*.f64 2 x) eps)
(+.f64 (*.f64 2 x) eps)
(+.f64 (*.f64 2 x) eps)
Outputs
(sin.f64 (*.f64 1/2 eps))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps)))
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2)))))
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x))))
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (sin.f64 (*.f64 1/2 eps))))
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))))))
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (fma.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)))))
(+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6))))
(fma.f64 (cos.f64 (*.f64 1/2 eps)) x (fma.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/6 (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (sin.f64 (*.f64 1/2 eps)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 x)
(+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x)))
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/8)) (sin.f64 x)))
(fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (+.f64 (*.f64 eps (*.f64 eps -1/8)) 1) (sin.f64 x)))
(+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 x))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (+.f64 (*.f64 1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x))))
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x))))
(fma.f64 -1/8 (*.f64 (sin.f64 x) (*.f64 eps eps)) (+.f64 (sin.f64 x) (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps)))))
(fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/8)) (fma.f64 (cos.f64 x) (fma.f64 -1/48 (pow.f64 eps 3) (*.f64 1/2 eps)) (sin.f64 x)))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))
(sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))
(sin.f64 (fma.f64 1/2 eps x))
(*.f64 1/2 (*.f64 eps (sin.f64 x)))
(*.f64 eps (*.f64 1/2 (sin.f64 x)))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 1/2 (*.f64 eps (sin.f64 x))))
(fma.f64 1/2 (*.f64 eps (sin.f64 x)) (*.f64 (cos.f64 x) (*.f64 (*.f64 1/4 eps) eps)))
(fma.f64 eps (*.f64 1/2 (sin.f64 x)) (*.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/4))))
(*.f64 eps (+.f64 (*.f64 1/2 (sin.f64 x)) (*.f64 eps (*.f64 (cos.f64 x) 1/4))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (*.f64 1/2 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/4 (*.f64 eps (*.f64 eps (cos.f64 x))) (fma.f64 1/2 (*.f64 eps (sin.f64 x)) (*.f64 (sin.f64 x) (*.f64 -1/12 (pow.f64 eps 3)))))
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/4)) (*.f64 (sin.f64 x) (+.f64 (*.f64 (pow.f64 eps 3) -1/12) (*.f64 1/2 eps))))
(*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps))))))
(+.f64 (*.f64 1/4 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))) (+.f64 (*.f64 -1/48 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (*.f64 1/2 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/4 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (fma.f64 -1/48 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (*.f64 1/2 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/4 (*.f64 eps (*.f64 eps (cos.f64 x))) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12) (fma.f64 (*.f64 1/2 eps) (sin.f64 x) (*.f64 (cos.f64 x) (*.f64 -1/48 (pow.f64 eps 4))))))
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps 1/4)) (fma.f64 (cos.f64 x) (*.f64 -1/48 (pow.f64 eps 4)) (*.f64 (sin.f64 x) (+.f64 (*.f64 (pow.f64 eps 3) -1/12) (*.f64 1/2 eps)))))
(+.f64 (*.f64 (sin.f64 x) (*.f64 eps (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4)))))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -1/2 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 x x) -1/2)))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (sin.f64 (*.f64 1/2 eps)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))))
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (fma.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))) (fma.f64 -1/6 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 (*.f64 x x) -1/2))))
(+.f64 (*.f64 x (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 x))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (fma.f64 -1/6 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)) (sin.f64 (*.f64 1/2 eps))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x))))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps (*.f64 x 1))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x)))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(*.f64 (neg.f64 eps) (sin.f64 x))
(*.f64 (sin.f64 x) (neg.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x)))
(-.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))) (*.f64 eps (sin.f64 x)))
(fma.f64 eps (neg.f64 (sin.f64 x)) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x)))))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 -1 (*.f64 eps (sin.f64 x)) (*.f64 -2 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12)))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (-.f64 (*.f64 -2 (*.f64 (sin.f64 x) (*.f64 -1/12 (pow.f64 eps 3)))) (*.f64 eps (sin.f64 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (fma.f64 (sin.f64 x) (neg.f64 eps) (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6))))
(-.f64 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6)) (*.f64 eps (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (sin.f64 x))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (+.f64 (*.f64 -1 (*.f64 eps (sin.f64 x))) (*.f64 -2 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/16 (sin.f64 x)) (*.f64 -1/48 (sin.f64 x))))))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (fma.f64 -1 (*.f64 eps (sin.f64 x)) (*.f64 -2 (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) -1/12))))))
(+.f64 (-.f64 (*.f64 -2 (*.f64 (sin.f64 x) (*.f64 -1/12 (pow.f64 eps 3)))) (*.f64 eps (sin.f64 x))) (*.f64 (cos.f64 x) (+.f64 (*.f64 (pow.f64 eps 4) 1/24) (*.f64 -1/2 (*.f64 eps eps)))))
(-.f64 (fma.f64 (cos.f64 x) (fma.f64 (pow.f64 eps 4) 1/24 (*.f64 eps (*.f64 eps -1/2))) (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) 1/6))) (*.f64 eps (sin.f64 x)))
(fma.f64 (cos.f64 x) (fma.f64 (pow.f64 eps 4) 1/24 (*.f64 eps (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 (*.f64 -2 (pow.f64 eps 3)) -1/12) eps)))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (-.f64 (*.f64 2 x) (*.f64 -1 eps))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(*.f64 -2 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) -2))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps)))))
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(fma.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (fma.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) -2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 -2 (*.f64 x x))))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x -2)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 x x) -2)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x -2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2))))
(+.f64 (*.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)) (+.f64 (*.f64 1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)))) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))))
(fma.f64 -2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (fma.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x) (fma.f64 1/3 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))))
(+.f64 (fma.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)) (*.f64 (sin.f64 (*.f64 1/2 eps)) 1/3))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 -2 (*.f64 x x))))
(fma.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 x x) -2) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) (+.f64 (*.f64 x -2) (*.f64 (pow.f64 x 3) 1/3))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x (+.f64 -2 (*.f64 (*.f64 x x) 1/3)))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x x) -2))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (+.f64 eps (*.f64 2 x))))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -2 x)))) (sin.f64 (*.f64 1/2 eps))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 (fma.f64 2 x eps)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps (*.f64 x 1)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 -2 (sin.f64 (fma.f64 1/2 eps x))))
(*.f64 -2 (*.f64 (sin.f64 (*.f64 1/2 eps)) (sin.f64 (fma.f64 1/2 eps x))))
eps
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(*.f64 2 x)
(*.f64 x 2)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(*.f64 2 x)
(*.f64 x 2)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(*.f64 2 x)
(*.f64 x 2)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 eps (*.f64 2 x))
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
eps
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
eps
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)
(+.f64 (*.f64 2 x) eps)
(fma.f64 2 x eps)
(fma.f64 x 2 eps)

localize5.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
2.5b
(-.f64 (cos.f64 eps) 1)
Compiler

Compiled 10 to 6 computations (40% saved)

series1.0ms (0%)

Counts
1 → 4
Calls

3 calls:

TimeVariablePointExpression
1.0ms
eps
@0
(-.f64 (cos.f64 eps) 1)
0.0ms
eps
@inf
(-.f64 (cos.f64 eps) 1)
0.0ms
eps
@-inf
(-.f64 (cos.f64 eps) 1)

rewrite42.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
498×pow1_binary64
485×add-sqr-sqrt_binary64
464×add-log-exp_binary64
463×log1p-expm1-u_binary64
463×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056
11046
212836
Stop Event
node limit
Counts
1 → 31
Calls
Call 1
Inputs
(-.f64 (cos.f64 eps) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 eps) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) (sqrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (cos.f64 eps) 3) -1) (/.f64 1 (+.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 (cos.f64 eps) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 (cos.f64 eps) 1)) (+.f64 (pow.f64 (cos.f64 eps) 3) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (pow.f64 (cos.f64 eps) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 eps) 3) -1) (+.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 eps) 3) -1) (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (+.f64 (cos.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (-.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (cos.f64 eps) 3) -1)) (neg.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 (cos.f64 eps) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1)) (neg.f64 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (cos.f64 eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log.f64 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 eps) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (cbrt.f64 (cos.f64 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 eps)) -1)))))

simplify104.0ms (0.6%)

Algorithm
egg-herbie
Rules
601×distribute-rgt-out_binary64
520×sqr-pow_binary64
481×associate-+l+_binary64
477×distribute-lft-out_binary64
413×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02470
15670
212970
342070
4199570
5437770
6475170
7525770
8624770
9723170
10767070
Stop Event
node limit
Counts
35 → 39
Calls
Call 1
Inputs
(*.f64 -1/2 (pow.f64 eps 2))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6))))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8)))))
Outputs
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/2 (*.f64 eps eps)))
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 1/24 (pow.f64 eps 4)))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6))))
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/24 (pow.f64 eps 4))))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (*.f64 -1/720 (pow.f64 eps 6)))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/720 (pow.f64 eps 6))))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8)))))
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8)))))
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 1/40320 (pow.f64 eps 8) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 -1/2 (*.f64 eps eps)))))
(fma.f64 (pow.f64 eps 4) (fma.f64 (pow.f64 eps 4) 1/40320 1/24) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8)))))

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps))))
0.5b
(log1p.f64 (cos.f64 (+.f64 x eps)))
2.4b
(cos.f64 (+.f64 x eps))
18.4b
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
Compiler

Compiled 33 to 8 computations (75.8% saved)

series97.0ms (0.5%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
29.0ms
eps
@-inf
(log1p.f64 (cos.f64 (+.f64 x eps)))
25.0ms
x
@inf
(log1p.f64 (cos.f64 (+.f64 x eps)))
19.0ms
x
@-inf
(log1p.f64 (cos.f64 (+.f64 x eps)))
18.0ms
eps
@inf
(log1p.f64 (cos.f64 (+.f64 x eps)))
2.0ms
x
@0
(log1p.f64 (cos.f64 (+.f64 x eps)))

rewrite91.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
449×log-prod_binary64
373×fma-def_binary64
342×exp-prod_binary64
288×pow-prod-down_binary64
263×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0925
118425
2271125
Stop Event
node limit
Counts
3 → 210
Calls
Call 1
Inputs
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(log1p.f64 (cos.f64 (+.f64 x eps)))
(expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 x eps) x) 2)) (sin.f64 (/.f64 (+.f64 (+.f64 x eps) x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) (neg.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) (neg.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (neg.f64 (cos.f64 x)) 3)) (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (-.f64 (pow.f64 (neg.f64 (cos.f64 x)) 2) (*.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (neg.f64 (cos.f64 x)) 2)) (-.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2)) (cbrt.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (sqrt.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) 1) (neg.f64 (+.f64 1 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) 1) (neg.f64 (-.f64 1 (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (neg.f64 (cbrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (neg.f64 (sqrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1)) 2) (cbrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1)) (neg.f64 (+.f64 1 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1)) 2) (cbrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1)) (neg.f64 (-.f64 1 (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (cos.f64 x))) 2) (cbrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1)) (sqrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1)) (neg.f64 (+.f64 1 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1)) (sqrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1)) (neg.f64 (-.f64 1 (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (cos.f64 x))) (sqrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 x eps) x) 2)) (sin.f64 (/.f64 (+.f64 (+.f64 x eps) x) 2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 x eps) x) 2)) (sin.f64 (/.f64 (+.f64 (+.f64 x eps) x) 2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 x eps) x) 2)) (sin.f64 (/.f64 (+.f64 (+.f64 x eps) x) 2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (cos.f64 x) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (log1p.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1)) 2)) (log.f64 (cbrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1))) (log.f64 (sqrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log1p.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3)) (log.f64 (+.f64 1 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (log1p.f64 (cos.f64 (+.f64 x eps))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (log.f64 (-.f64 1 (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (log.f64 (-.f64 1 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log1p.f64 (cos.f64 (+.f64 x eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log1p.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (pow.f64 (cbrt.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 2) (cbrt.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (sqrt.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log1p.f64 (cos.f64 (+.f64 x eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log1p.f64 (cos.f64 (+.f64 x eps))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log1p.f64 (cos.f64 (+.f64 x eps))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (log1p.f64 (cos.f64 (+.f64 x eps))))) 2)) (cbrt.f64 (log.f64 (log1p.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))))) (sqrt.f64 (log.f64 (log1p.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log1p.f64 (cos.f64 (+.f64 x eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log1p.f64 (cos.f64 (+.f64 x eps))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (log1p.f64 (cos.f64 (+.f64 x eps))) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (log1p.f64 (cos.f64 (+.f64 x eps))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (log1p.f64 (cos.f64 (+.f64 x eps))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (+.f64 x eps)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (+.f64 x eps)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((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)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 x eps))))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 x eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 3) 1) (+.f64 (pow.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 2) (+.f64 1 (*.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2) (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 2) 1) (+.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)) (cos.f64 (-.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 x eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (cos.f64 (+.f64 x eps)))) 2)) (cbrt.f64 (log.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (cos.f64 (+.f64 x eps))))) (sqrt.f64 (log.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (+.f64 x eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (cos.f64 (+.f64 x eps)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (cos.f64 (+.f64 x eps)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (cos.f64 (+.f64 x eps)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 (+.f64 x eps))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (cos.f64 (+.f64 x eps))) 3) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1)) 2) (cbrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1)) (sqrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps)))))))

simplify73.0ms (0.4%)

Algorithm
egg-herbie
Rules
672×fma-def_binary64
661×associate-*r*_binary64
624×associate-*l*_binary64
274×unsub-neg_binary64
247×times-frac_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01361225
14131129
213771051
374721045
Stop Event
node limit
Counts
282 → 266
Calls
Call 1
Inputs
(-.f64 (cos.f64 eps) 1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(log.f64 (+.f64 (cos.f64 eps) 1))
(+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 eps) x) (+.f64 (cos.f64 eps) 1))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (pow.f64 x 2))) (+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 eps) x) (+.f64 (cos.f64 eps) 1)))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (pow.f64 x 2))) (+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 eps) x) (+.f64 (cos.f64 eps) 1))) (*.f64 1/6 (*.f64 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 eps) (sin.f64 eps)) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (+.f64 (/.f64 (sin.f64 eps) (+.f64 (cos.f64 eps) 1)) (*.f64 -2 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3))))) (pow.f64 x 3))))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log.f64 (+.f64 (cos.f64 x) 1))
(+.f64 (log.f64 (+.f64 (cos.f64 x) 1)) (*.f64 -1 (/.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) 1))))
(+.f64 (log.f64 (+.f64 (cos.f64 x) 1)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))) (*.f64 -1 (/.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) 1)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (/.f64 (sin.f64 x) (+.f64 (cos.f64 x) 1)))))) (+.f64 (log.f64 (+.f64 (cos.f64 x) 1)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))) (*.f64 -1 (/.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) 1))))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
(cos.f64 eps)
(+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps))))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps)))))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps))))))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 x)
(+.f64 (cos.f64 x) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
Outputs
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (*.f64 (neg.f64 x) (sin.f64 eps)) 1))
(+.f64 (cos.f64 eps) (fma.f64 (neg.f64 x) (sin.f64 eps) -1))
(+.f64 (cos.f64 eps) (fma.f64 x (neg.f64 (sin.f64 eps)) -1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x))) 1))
(+.f64 (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x) (*.f64 (sin.f64 eps) (neg.f64 x))) (+.f64 (cos.f64 eps) -1))
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps))))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x)))) 1))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x))) (-.f64 (*.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2))) 1)))
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x)) (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x) -1)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 -1 (*.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)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x)))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (neg.f64 eps)))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 eps (neg.f64 (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (neg.f64 eps))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (+.f64 (neg.f64 eps) (*.f64 1/6 (pow.f64 eps 3)))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x)))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (neg.f64 eps)))))
(fma.f64 (cos.f64 x) (*.f64 1/24 (pow.f64 eps 4)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (+.f64 (neg.f64 eps) (*.f64 1/6 (pow.f64 eps 3))))))
(fma.f64 (cos.f64 x) (*.f64 1/24 (pow.f64 eps 4)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(log.f64 (+.f64 (cos.f64 eps) 1))
(log1p.f64 (cos.f64 eps))
(+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 eps) x) (+.f64 (cos.f64 eps) 1))))
(+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (/.f64 (*.f64 (neg.f64 x) (sin.f64 eps)) (+.f64 (cos.f64 eps) 1)))
(-.f64 (log1p.f64 (cos.f64 eps)) (*.f64 (tan.f64 (/.f64 eps 2)) x))
(-.f64 (log1p.f64 (cos.f64 eps)) (*.f64 x (tan.f64 (/.f64 eps 2))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (pow.f64 x 2))) (+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (*.f64 -1 (/.f64 (*.f64 (sin.f64 eps) x) (+.f64 (cos.f64 eps) 1)))))
(fma.f64 1/2 (*.f64 (*.f64 x x) (*.f64 -1 (+.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))))) (+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (/.f64 (*.f64 (neg.f64 x) (sin.f64 eps)) (+.f64 (cos.f64 eps) 1))))
(-.f64 (fma.f64 (*.f64 -1/2 (+.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))))) (*.f64 x x) (log1p.f64 (cos.f64 eps))) (*.f64 (tan.f64 (/.f64 eps 2)) x))
(fma.f64 (*.f64 x x) (*.f64 -1/2 (fma.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2)) (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)))) (-.f64 (log1p.f64 (cos.f64 eps)) (*.f64 x (tan.f64 (/.f64 eps 2)))))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)))) (pow.f64 x 2))) (+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (+.f64 (*.f64 -1 (/.f64 (*.f64 (sin.f64 eps) x) (+.f64 (cos.f64 eps) 1))) (*.f64 1/6 (*.f64 (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 eps) (sin.f64 eps)) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))) (+.f64 (/.f64 (sin.f64 eps) (+.f64 (cos.f64 eps) 1)) (*.f64 -2 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3))))) (pow.f64 x 3))))))
(fma.f64 1/2 (*.f64 (*.f64 x x) (*.f64 -1 (+.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (/.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (+.f64 (cos.f64 eps) 1) 2))))) (+.f64 (log.f64 (+.f64 (cos.f64 eps) 1)) (fma.f64 -1 (/.f64 (sin.f64 eps) (/.f64 (+.f64 (cos.f64 eps) 1) x)) (*.f64 1/6 (*.f64 (pow.f64 x 3) (fma.f64 -3 (/.f64 (*.f64 (cos.f64 eps) (sin.f64 eps)) (pow.f64 (+.f64 (cos.f64 eps) 1) 2)) (+.f64 (/.f64 (sin.f64 eps) (+.f64 (cos.f64 eps) 1)) (/.f64 (*.f64 -2 (pow.f64 (sin.f64 eps) 3)) (pow.f64 (+.f64 (cos.f64 eps) 1) 3)))))))))
(+.f64 (-.f64 (fma.f64 (*.f64 -1/2 (+.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (*.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2))))) (*.f64 x x) (log1p.f64 (cos.f64 eps))) (*.f64 (tan.f64 (/.f64 eps 2)) x)) (*.f64 (fma.f64 -3 (*.f64 (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)) (tan.f64 (/.f64 eps 2))) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 eps) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3)) (tan.f64 (/.f64 eps 2)))) (*.f64 1/6 (pow.f64 x 3))))
(fma.f64 (*.f64 x x) (*.f64 -1/2 (fma.f64 (tan.f64 (/.f64 eps 2)) (tan.f64 (/.f64 eps 2)) (/.f64 (cos.f64 eps) (+.f64 (cos.f64 eps) 1)))) (fma.f64 (pow.f64 x 3) (fma.f64 1/6 (fma.f64 -3 (/.f64 (*.f64 (cos.f64 eps) (tan.f64 (/.f64 eps 2))) (+.f64 (cos.f64 eps) 1)) (tan.f64 (/.f64 eps 2))) (*.f64 (pow.f64 (tan.f64 (/.f64 eps 2)) 3) -1/3)) (-.f64 (log1p.f64 (cos.f64 eps)) (*.f64 x (tan.f64 (/.f64 eps 2))))))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 eps (*.f64 -1 x)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 (cos.f64 x) 1))
(log.f64 (+.f64 1 (cos.f64 x)))
(log1p.f64 (cos.f64 x))
(+.f64 (log.f64 (+.f64 (cos.f64 x) 1)) (*.f64 -1 (/.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) 1))))
(+.f64 (log.f64 (+.f64 1 (cos.f64 x))) (/.f64 (*.f64 (neg.f64 eps) (sin.f64 x)) (+.f64 1 (cos.f64 x))))
(-.f64 (log1p.f64 (cos.f64 x)) (*.f64 (/.f64 eps (+.f64 1 (cos.f64 x))) (sin.f64 x)))
(-.f64 (log1p.f64 (cos.f64 x)) (*.f64 (tan.f64 (/.f64 x 2)) eps))
(+.f64 (log.f64 (+.f64 (cos.f64 x) 1)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))) (*.f64 -1 (/.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) 1)))))
(+.f64 (log.f64 (+.f64 1 (cos.f64 x))) (fma.f64 1/2 (*.f64 (*.f64 eps eps) (*.f64 -1 (+.f64 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2))))) (/.f64 (*.f64 (neg.f64 eps) (sin.f64 x)) (+.f64 1 (cos.f64 x)))))
(+.f64 (-.f64 (log1p.f64 (cos.f64 x)) (*.f64 (/.f64 eps (+.f64 1 (cos.f64 x))) (sin.f64 x))) (*.f64 (-.f64 (/.f64 (neg.f64 (cos.f64 x)) (+.f64 1 (cos.f64 x))) (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2)))) (*.f64 1/2 (*.f64 eps eps))))
(-.f64 (fma.f64 (*.f64 eps (*.f64 eps -1/2)) (fma.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2)) (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x)))) (log1p.f64 (cos.f64 x))) (*.f64 (tan.f64 (/.f64 x 2)) eps))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 (cos.f64 x) 1) 2))) (+.f64 (*.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 (cos.f64 x) 1) 3))) (/.f64 (sin.f64 x) (+.f64 (cos.f64 x) 1)))))) (+.f64 (log.f64 (+.f64 (cos.f64 x) 1)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (/.f64 (cos.f64 x) (+.f64 (cos.f64 x) 1))) (*.f64 -1 (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 (cos.f64 x) 1) 2)))))) (*.f64 -1 (/.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) 1))))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (fma.f64 -3 (/.f64 (*.f64 (cos.f64 x) (sin.f64 x)) (pow.f64 (+.f64 1 (cos.f64 x)) 2)) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (/.f64 (sin.f64 x) (+.f64 1 (cos.f64 x)))))) (+.f64 (log.f64 (+.f64 1 (cos.f64 x))) (fma.f64 1/2 (*.f64 (*.f64 eps eps) (*.f64 -1 (+.f64 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (/.f64 (pow.f64 (sin.f64 x) 2) (pow.f64 (+.f64 1 (cos.f64 x)) 2))))) (/.f64 (*.f64 (neg.f64 eps) (sin.f64 x)) (+.f64 1 (cos.f64 x))))))
(+.f64 (-.f64 (*.f64 (-.f64 (/.f64 (neg.f64 (cos.f64 x)) (+.f64 1 (cos.f64 x))) (*.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2)))) (*.f64 1/2 (*.f64 eps eps))) (*.f64 (/.f64 eps (+.f64 1 (cos.f64 x))) (sin.f64 x))) (fma.f64 (*.f64 1/6 (pow.f64 eps 3)) (fma.f64 -3 (*.f64 (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x))) (tan.f64 (/.f64 x 2))) (fma.f64 -2 (/.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (+.f64 1 (cos.f64 x)) 3)) (tan.f64 (/.f64 x 2)))) (log1p.f64 (cos.f64 x))))
(-.f64 (fma.f64 (fma.f64 -2 (pow.f64 (tan.f64 (/.f64 x 2)) 3) (fma.f64 -3 (/.f64 (*.f64 (tan.f64 (/.f64 x 2)) (cos.f64 x)) (+.f64 1 (cos.f64 x))) (tan.f64 (/.f64 x 2)))) (*.f64 1/6 (pow.f64 eps 3)) (fma.f64 (*.f64 eps (*.f64 eps -1/2)) (fma.f64 (tan.f64 (/.f64 x 2)) (tan.f64 (/.f64 x 2)) (/.f64 (cos.f64 x) (+.f64 1 (cos.f64 x)))) (log1p.f64 (cos.f64 x)))) (*.f64 (tan.f64 (/.f64 x 2)) eps))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (+.f64 eps x))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(log.f64 (+.f64 1 (cos.f64 (-.f64 x (*.f64 -1 eps)))))
(log1p.f64 (cos.f64 (+.f64 eps x)))
(cos.f64 eps)
(+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps))))
(+.f64 (cos.f64 eps) (*.f64 (neg.f64 x) (sin.f64 eps)))
(-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps)))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps)))))
(+.f64 (cos.f64 eps) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (*.f64 (neg.f64 x) (sin.f64 eps))))
(+.f64 (cos.f64 eps) (-.f64 (*.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x x))) (*.f64 x (sin.f64 eps))))
(+.f64 (cos.f64 eps) (*.f64 x (-.f64 (*.f64 (cos.f64 eps) (*.f64 -1/2 x)) (sin.f64 eps))))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps))))))
(+.f64 (cos.f64 eps) (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (*.f64 (neg.f64 x) (sin.f64 eps)))))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x x))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x)))))
(+.f64 (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (cos.f64 eps)) (*.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x))))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 eps (*.f64 -1 x)))
(cos.f64 (+.f64 eps x))
(cos.f64 x)
(+.f64 (cos.f64 x) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (cos.f64 x) (*.f64 (neg.f64 eps) (sin.f64 x)))
(fma.f64 (neg.f64 eps) (sin.f64 x) (cos.f64 x))
(-.f64 (cos.f64 x) (*.f64 eps (sin.f64 x)))
(+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (cos.f64 x)) (*.f64 eps (sin.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (+.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (neg.f64 eps) (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (cos.f64 x)) (*.f64 eps (sin.f64 x))))
(fma.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (neg.f64 eps) (*.f64 1/6 (pow.f64 eps 3)))))
(fma.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
(cos.f64 (+.f64 eps x))
(cos.f64 (-.f64 x (*.f64 -1 eps)))
(cos.f64 (+.f64 eps x))

localize28.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
0.1b
(*.f64 1/6 (pow.f64 eps 3))
0.8b
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
3.1b
(*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))
Compiler

Compiled 64 to 39 computations (39.1% saved)

series14.0ms (0.1%)

Counts
4 → 68
Calls

21 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
1.0ms
x
@-inf
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
1.0ms
eps
@0
(*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))
1.0ms
x
@0
(*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))
1.0ms
x
@inf
(*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))

rewrite91.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
852×prod-diff_binary64
744×log-prod_binary64
392×fma-def_binary64
276×expm1-udef_binary64
276×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01558
132158
2386658
Stop Event
node limit
Counts
4 → 89
Calls
Call 1
Inputs
(*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(*.f64 1/6 (pow.f64 eps 3))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/6 (pow.f64 eps 3)) (sin.f64 x)) (*.f64 (neg.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (*.f64 1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (neg.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 3) 1/216) (pow.f64 eps 3)) (sin.f64 x)) (fma.f64 eps (fma.f64 1/6 (pow.f64 eps 3) eps) (*.f64 (pow.f64 eps 6) 1/36)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (pow.f64 eps 6) 1/36) (*.f64 eps eps)) (sin.f64 x)) (fma.f64 1/6 (pow.f64 eps 3) eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 3) 1/216) (pow.f64 eps 3))) (fma.f64 eps (fma.f64 1/6 (pow.f64 eps 3) eps) (*.f64 (pow.f64 eps 6) 1/36)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 eps 6) 1/36) (*.f64 eps eps))) (fma.f64 1/6 (pow.f64 eps 3) eps))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) 3) (pow.f64 (sin.f64 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 x) (*.f64 1/6 (pow.f64 eps 3)) (*.f64 (sin.f64 x) (neg.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/6 (pow.f64 eps 3)) (sin.f64 x) (*.f64 (neg.f64 eps) (sin.f64 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) 1) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))) (cbrt.f64 (exp.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))) (pow.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))) 2) (cbrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))) (sqrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) 3) (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 3)) (fma.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (-.f64 (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 2) (*.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 2)) (-.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 x)) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (exp.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))) (exp.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 1/6 (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 eps 3)) 1/6)) (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 eps 3)) 1/6)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (pow.f64 eps 3)) 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 eps 3)) 1/6))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (pow.f64 eps 3)) 1/6))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 1/6 (pow.f64 eps 3)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 1/6 (pow.f64 eps 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 eps (cbrt.f64 1/6)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 1/6) (pow.f64 eps 3/2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 3) 1/216) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 eps 6) 1/36))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (pow.f64 eps 3)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 1/6 (pow.f64 eps 3)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 3) 1/216))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 1/6 (pow.f64 eps 3))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 1/6 (pow.f64 eps 3))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 3 (log.f64 eps) (log1p.f64 -5/6)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 3 (log.f64 eps) (log1p.f64 -5/6)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 eps) (*.f64 -1/2 (cos.f64 x)))) (cbrt.f64 (pow.f64 (exp.f64 eps) (*.f64 -1/2 (cos.f64 x)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 eps) (*.f64 -1/2 (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 eps) (*.f64 -1/2 (cos.f64 x))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 eps) (*.f64 -1/2 (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 eps) (*.f64 -1/2 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 eps 3) (pow.f64 (*.f64 -1/2 (cos.f64 x)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 -1/2 (cos.f64 x)) 3) (pow.f64 eps 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2))) 1))))))

simplify79.0ms (0.4%)

Algorithm
egg-herbie
Rules
774×unsub-neg_binary64
441×associate-+l+_binary64
388×fma-def_binary64
365×associate-+r+_binary64
328×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0831309
12231239
26111179
325481152
459741152
Stop Event
node limit
Counts
157 → 131
Calls
Call 1
Inputs
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x)
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x))
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (*.f64 1/120 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (+.f64 (*.f64 -1/5040 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 7))) (*.f64 1/120 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 5))))))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(*.f64 -1/2 (pow.f64 eps 2))
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x))
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2)))))
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2))))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 -1/2 eps)
(+.f64 (*.f64 -1/2 eps) (*.f64 1/4 (*.f64 eps (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 eps) (+.f64 (*.f64 1/4 (*.f64 eps (pow.f64 x 2))) (*.f64 -1/48 (*.f64 eps (pow.f64 x 4)))))
(+.f64 (*.f64 1/1440 (*.f64 eps (pow.f64 x 6))) (+.f64 (*.f64 -1/2 eps) (+.f64 (*.f64 1/4 (*.f64 eps (pow.f64 x 2))) (*.f64 -1/48 (*.f64 eps (pow.f64 x 4))))))
(*.f64 -1/2 (*.f64 (cos.f64 x) eps))
(*.f64 -1/2 (*.f64 (cos.f64 x) eps))
(*.f64 -1/2 (*.f64 (cos.f64 x) eps))
(*.f64 -1/2 (*.f64 (cos.f64 x) eps))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
Outputs
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x)
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x)
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x))
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (pow.f64 x 3)) (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 (pow.f64 x 3) -1/6)))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3))))
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (*.f64 1/120 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 5)))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (pow.f64 x 3)) (fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 1/120 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (pow.f64 x 5)))))
(fma.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3)) (fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 (pow.f64 x 5) 1/120))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 1/120 (pow.f64 x 5)) (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 x (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/6 (pow.f64 x 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (+.f64 (*.f64 -1/5040 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 7))) (*.f64 1/120 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 5))))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (pow.f64 x 3)) (fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (fma.f64 -1/5040 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (pow.f64 x 7)) (*.f64 1/120 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (pow.f64 x 5))))))
(fma.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3)) (fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x (fma.f64 1/120 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 5)) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (*.f64 (pow.f64 x 7) -1/5040)))))
(+.f64 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/5040 (pow.f64 x 7)))))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 (+.f64 x (*.f64 -1/6 (pow.f64 x 3))) (+.f64 (*.f64 -1/5040 (pow.f64 x 7)) (*.f64 1/120 (pow.f64 x 5)))))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(neg.f64 (*.f64 eps (sin.f64 x)))
(*.f64 eps (neg.f64 (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))
(*.f64 (pow.f64 eps 3) (*.f64 1/6 (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))
(*.f64 (pow.f64 eps 3) (*.f64 1/6 (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(neg.f64 (*.f64 eps (sin.f64 x)))
(*.f64 eps (neg.f64 (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))
(*.f64 (pow.f64 eps 3) (*.f64 1/6 (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (pow.f64 eps 3) (*.f64 1/6 (sin.f64 x))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 1/6 (*.f64 eps (sin.f64 x))) (*.f64 -1/2 (cos.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))
(*.f64 (pow.f64 eps 3) (*.f64 1/6 (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (pow.f64 eps 3) (*.f64 1/6 (sin.f64 x))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 1/6 (*.f64 eps (sin.f64 x))) (*.f64 -1/2 (cos.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 eps -1/2))
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x))
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x (*.f64 -1/2 (*.f64 eps eps)))
(fma.f64 eps (*.f64 eps -1/2) (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 eps (*.f64 eps -1/2)))
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2)))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 1/4 (*.f64 (*.f64 eps eps) (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x (*.f64 (*.f64 eps eps) (*.f64 (*.f64 x x) 1/4))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 (*.f64 eps eps) (+.f64 -1/2 (*.f64 x (*.f64 x 1/4)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 eps (*.f64 eps (+.f64 -1/2 (*.f64 x (*.f64 x 1/4))))))
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3))) (*.f64 1/4 (*.f64 (pow.f64 eps 2) (pow.f64 x 2))))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (fma.f64 -1/6 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (pow.f64 x 3)) (*.f64 1/4 (*.f64 (*.f64 eps eps) (*.f64 x x))))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) x (fma.f64 -1/6 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (pow.f64 x 3)) (*.f64 (*.f64 eps eps) (*.f64 (*.f64 x x) 1/4)))))
(+.f64 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (*.f64 eps eps) (+.f64 -1/2 (*.f64 x (*.f64 x 1/4)))))
(+.f64 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 eps (*.f64 eps (+.f64 -1/2 (*.f64 x (*.f64 x 1/4))))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)) (fma.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x)))))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 eps)
(*.f64 eps -1/2)
(+.f64 (*.f64 -1/2 eps) (*.f64 1/4 (*.f64 eps (pow.f64 x 2))))
(fma.f64 -1/2 eps (*.f64 1/4 (*.f64 eps (*.f64 x x))))
(fma.f64 eps -1/2 (*.f64 1/4 (*.f64 eps (*.f64 x x))))
(*.f64 eps (+.f64 -1/2 (*.f64 x (*.f64 x 1/4))))
(+.f64 (*.f64 -1/2 eps) (+.f64 (*.f64 1/4 (*.f64 eps (pow.f64 x 2))) (*.f64 -1/48 (*.f64 eps (pow.f64 x 4)))))
(fma.f64 -1/2 eps (fma.f64 1/4 (*.f64 eps (*.f64 x x)) (*.f64 (*.f64 -1/48 eps) (pow.f64 x 4))))
(fma.f64 eps -1/2 (fma.f64 1/4 (*.f64 eps (*.f64 x x)) (*.f64 -1/48 (*.f64 eps (pow.f64 x 4)))))
(fma.f64 eps -1/2 (*.f64 eps (+.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 -1/48 (pow.f64 x 4)))))
(*.f64 eps (+.f64 (+.f64 -1/2 (*.f64 -1/48 (pow.f64 x 4))) (*.f64 x (*.f64 x 1/4))))
(+.f64 (*.f64 1/1440 (*.f64 eps (pow.f64 x 6))) (+.f64 (*.f64 -1/2 eps) (+.f64 (*.f64 1/4 (*.f64 eps (pow.f64 x 2))) (*.f64 -1/48 (*.f64 eps (pow.f64 x 4))))))
(fma.f64 1/1440 (*.f64 eps (pow.f64 x 6)) (fma.f64 -1/2 eps (fma.f64 1/4 (*.f64 eps (*.f64 x x)) (*.f64 (*.f64 -1/48 eps) (pow.f64 x 4)))))
(fma.f64 1/1440 (*.f64 eps (pow.f64 x 6)) (fma.f64 eps -1/2 (fma.f64 1/4 (*.f64 eps (*.f64 x x)) (*.f64 -1/48 (*.f64 eps (pow.f64 x 4))))))
(fma.f64 eps -1/2 (fma.f64 eps (*.f64 1/1440 (pow.f64 x 6)) (*.f64 eps (+.f64 (*.f64 x (*.f64 x 1/4)) (*.f64 -1/48 (pow.f64 x 4))))))
(*.f64 eps (+.f64 (+.f64 (*.f64 -1/48 (pow.f64 x 4)) (*.f64 x (*.f64 x 1/4))) (+.f64 -1/2 (*.f64 1/1440 (pow.f64 x 6)))))
(*.f64 -1/2 (*.f64 (cos.f64 x) eps))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 (cos.f64 x) eps))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 (cos.f64 x) eps))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 (cos.f64 x) eps))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 eps (cos.f64 x)))
(*.f64 eps (*.f64 -1/2 (cos.f64 x)))
(*.f64 (cos.f64 x) (*.f64 eps -1/2))

localize16.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
3.7b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
Compiler

Compiled 40 to 9 computations (77.5% saved)

series73.0ms (0.4%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
67.0ms
x
@inf
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
1.0ms
eps
@inf
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
1.0ms
x
@-inf
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
1.0ms
eps
@-inf
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
1.0ms
x
@0
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))

rewrite64.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
913×pow1_binary64
834×add-log-exp_binary64
833×log1p-expm1-u_binary64
833×expm1-log1p-u_binary64
814×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01032
119930
2245030
Stop Event
node limit
Counts
2 → 61
Calls
Call 1
Inputs
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
(fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 0) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) 2) (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (sqrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3)) (+.f64 (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps))) (-.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2) (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps))) (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 1) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) -1) (*.f64 (cos.f64 x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1 (*.f64 (sin.f64 x) (sin.f64 eps))) (*.f64 -1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 0 (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (neg.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2))) (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2))) (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -1 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3)) (+.f64 0 (+.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2) (*.f64 0 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3) (pow.f64 (cos.f64 x) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (-.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 0 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (pow.f64 (cos.f64 x) 2)) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))))

simplify62.0ms (0.4%)

Algorithm
egg-herbie
Rules
432×distribute-rgt-neg-in_binary64
425×distribute-lft-out--_binary64
387×associate-+l+_binary64
380×fma-neg_binary64
360×fma-def_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
074902
1209822
2578795
32069784
45077784
Stop Event
node limit
Counts
109 → 95
Calls
Call 1
Inputs
(-.f64 (cos.f64 eps) 1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
1
(+.f64 1 (*.f64 (sin.f64 eps) x))
(+.f64 1 (+.f64 (*.f64 (sin.f64 eps) x) (*.f64 -1/2 (pow.f64 x 2))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 1 (+.f64 (*.f64 (sin.f64 eps) x) (*.f64 -1/2 (pow.f64 x 2)))))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(cos.f64 x)
(+.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
Outputs
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (neg.f64 (*.f64 x (sin.f64 eps))) 1))
(+.f64 (cos.f64 eps) (fma.f64 (neg.f64 x) (sin.f64 eps) -1))
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x))) 1))
(+.f64 (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x) (*.f64 (sin.f64 eps) (neg.f64 x))) (+.f64 (cos.f64 eps) -1))
(+.f64 (cos.f64 eps) (+.f64 -1 (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)))))
(+.f64 (cos.f64 eps) (fma.f64 x (fma.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2) (neg.f64 (sin.f64 eps))) -1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x)))) 1))
(+.f64 (+.f64 (*.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x)))) (+.f64 (cos.f64 eps) -1))
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x)) (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x) -1)))
(+.f64 (cos.f64 eps) (fma.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (fma.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x)) -1)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(neg.f64 (*.f64 eps (sin.f64 x)))
(*.f64 eps (neg.f64 (sin.f64 x)))
(*.f64 (sin.f64 x) (neg.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (neg.f64 (*.f64 eps (sin.f64 x))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 eps (neg.f64 (sin.f64 x))))
(-.f64 (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps))) (*.f64 eps (sin.f64 x)))
(*.f64 eps (-.f64 (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 eps (neg.f64 (sin.f64 x)))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/6 (pow.f64 eps 3)) (neg.f64 eps))))
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (neg.f64 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 eps (neg.f64 (sin.f64 x))))))
(fma.f64 (cos.f64 x) (*.f64 1/24 (pow.f64 eps 4)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/6 (pow.f64 eps 3)) (neg.f64 eps)))))
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4)))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
1
(+.f64 1 (*.f64 (sin.f64 eps) x))
(+.f64 1 (*.f64 x (sin.f64 eps)))
(fma.f64 x (sin.f64 eps) 1)
(+.f64 1 (+.f64 (*.f64 (sin.f64 eps) x) (*.f64 -1/2 (pow.f64 x 2))))
(+.f64 1 (fma.f64 (sin.f64 eps) x (*.f64 -1/2 (*.f64 x x))))
(+.f64 1 (fma.f64 x (sin.f64 eps) (*.f64 x (*.f64 x -1/2))))
(fma.f64 x (sin.f64 eps) (fma.f64 x (*.f64 x -1/2) 1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 1 (+.f64 (*.f64 (sin.f64 eps) x) (*.f64 -1/2 (pow.f64 x 2)))))
(fma.f64 -1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (+.f64 1 (fma.f64 (sin.f64 eps) x (*.f64 -1/2 (*.f64 x x)))))
(+.f64 (fma.f64 x (sin.f64 eps) (*.f64 x (*.f64 x -1/2))) (fma.f64 (*.f64 (sin.f64 eps) (pow.f64 x 3)) -1/6 1))
(fma.f64 (sin.f64 eps) (*.f64 (pow.f64 x 3) -1/6) (fma.f64 x (sin.f64 eps) (fma.f64 x (*.f64 x -1/2) 1)))
(+.f64 (fma.f64 x (*.f64 x -1/2) 1) (*.f64 (sin.f64 eps) (+.f64 (*.f64 (pow.f64 x 3) -1/6) x)))
(+.f64 (fma.f64 x (*.f64 x -1/2) 1) (*.f64 (sin.f64 eps) (+.f64 x (*.f64 (pow.f64 x 3) -1/6))))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(cos.f64 x)
(+.f64 (*.f64 eps (sin.f64 x)) (cos.f64 x))
(fma.f64 eps (sin.f64 x) (cos.f64 x))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))
(+.f64 (fma.f64 eps (sin.f64 x) (cos.f64 x)) (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) -1/6))
(fma.f64 eps (sin.f64 x) (fma.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) -1/6 (cos.f64 x)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (*.f64 (pow.f64 eps 3) -1/6) eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))))
(+.f64 (fma.f64 eps (sin.f64 x) (cos.f64 x)) (fma.f64 1/120 (*.f64 (sin.f64 x) (pow.f64 eps 5)) (*.f64 (*.f64 (sin.f64 x) (pow.f64 eps 3)) -1/6)))
(+.f64 (fma.f64 eps (sin.f64 x) (cos.f64 x)) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/120 (pow.f64 eps 5)) (*.f64 (pow.f64 eps 3) -1/6))))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (fma.f64 (pow.f64 eps 3) -1/6 (*.f64 1/120 (pow.f64 eps 5))) eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 eps (fma.f64 (pow.f64 eps 3) -1/6 (*.f64 1/120 (pow.f64 eps 5))))))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))
(+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x))

eval319.0ms (1.8%)

Compiler

Compiled 17347 to 8439 computations (51.4% saved)

prune319.0ms (1.8%)

Pruning

75 alts after pruning (72 fresh and 3 done)

PrunedKeptTotal
New81157868
Fresh171532
Picked011
Done325
Total83175906
Error
0.1b
Counts
906 → 75
Alt Table
Click to see full alt table
StatusErrorProgram
44.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2)
40.8b
(-.f64 (cos.f64 eps) 1)
41.0b
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
41.0b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1))
53.5b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
50.5b
(*.f64 eps (*.f64 eps -1/2))
32.1b
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 3))
24.6b
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
46.5b
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
42.2b
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
53.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2)
41.0b
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
24.5b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3) (pow.f64 (cos.f64 x) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (-.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x)))))))
24.4b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (+.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 1)))
40.5b
(-.f64 (expm1.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) (cos.f64 x))
45.4b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2)
24.3b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
31.7b
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
46.2b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
31.4b
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x)))
35.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2)
41.3b
(-.f64 (-.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 1) (cos.f64 x))
24.7b
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
41.2b
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
17.3b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) -2)
24.5b
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps))) (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
41.3b
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
24.3b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
55.4b
(-.f64 (cos.f64 x) (cos.f64 x))
40.1b
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
55.2b
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
36.5b
(*.f64 (sin.f64 x) (neg.f64 eps))
41.1b
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 eps 6) 1/36) (*.f64 eps eps)) (sin.f64 x)) (fma.f64 1/6 (pow.f64 eps 3) eps)))
50.8b
(*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2)
24.3b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (log1p.f64 (expm1.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))
53.1b
(/.f64 (+.f64 (pow.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) 3) (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 3)) (fma.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (-.f64 (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 2) (*.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))))
18.3b
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
35.0b
(fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
24.3b
(-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
41.2b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
27.5b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (expm1.f64 (log1p.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))
47.4b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2)
39.8b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x)))
55.7b
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)
24.5b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3))))
31.5b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (+.f64 (*.f64 eps (*.f64 eps -1/8)) 1) (sin.f64 x)))) -2)
41.4b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
35.6b
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
24.3b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
37.2b
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2)
24.3b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (+.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x))))
50.6b
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
44.6b
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (cbrt.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) 3) (pow.f64 (sin.f64 x) 3))))
40.9b
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
50.6b
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
49.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2)
41.0b
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
49.2b
(*.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1))
41.2b
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
34.8b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (pow.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 2)))
40.8b
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
35.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
55.0b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2)
36.0b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
24.4b
(-.f64 (expm1.f64 (log1p.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))))) (cos.f64 x))
24.3b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
40.8b
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
31.7b
(*.f64 (+.f64 (*.f64 (sin.f64 x) (*.f64 eps (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4))))) -2)
40.4b
(-.f64 (cos.f64 eps) (cos.f64 x))
54.1b
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
47.5b
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 eps (*.f64 eps -1/2)))
31.6b
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
24.9b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
44.6b
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 2))
50.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2)
Compiler

Compiled 2650 to 1858 computations (29.9% saved)

localize72.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))
0.3b
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))
2.3b
(cos.f64 (*.f64 (+.f64 x eps) 1/2))
2.5b
(sin.f64 (*.f64 (+.f64 x eps) 1/2))
Compiler

Compiled 171 to 97 computations (43.3% saved)

series15.0ms (0.1%)

Counts
4 → 96
Calls

24 calls:

TimeVariablePointExpression
2.0ms
eps
@inf
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))
1.0ms
eps
@0
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))
1.0ms
x
@inf
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))
1.0ms
eps
@-inf
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))
1.0ms
x
@-inf
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))

rewrite98.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
476×fma-neg_binary64
343×expm1-udef_binary64
343×log1p-udef_binary64
223×add-sqr-sqrt_binary64
220×pow1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01980
143355
2624755
Stop Event
node limit
Counts
4 → 97
Calls
Call 1
Inputs
(sin.f64 (*.f64 (+.f64 x eps) 1/2))
(cos.f64 (*.f64 (+.f64 x eps) 1/2))
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))
(*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (*.f64 (+.f64 x eps) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (cbrt.f64 (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 2)) (cbrt.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (sqrt.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) 2) (cbrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) (sqrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) (fma.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))) (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) 1) (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) 3) (pow.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2) 3)) (+.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)) (*.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) 3) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))) 3)) (+.f64 (*.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2)))) (-.f64 (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2))))) (*.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2)) (*.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2))) (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2)))) (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))))) (-.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 3) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 3)) (sin.f64 (*.f64 eps 1/2))) (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) (-.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 3) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 3))) (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) (-.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) (sin.f64 (*.f64 eps 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 eps 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 (*.f64 eps 1/2) (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) (cos.f64 (+.f64 (*.f64 eps 1/2) (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)) (*.f64 eps 1/2))) (cos.f64 (+.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)) (*.f64 eps 1/2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (cos.f64 (*.f64 x 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (*.f64 x 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 eps 1/2)) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (sin.f64 (*.f64 eps 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cos.f64 (*.f64 x 1/2)) 2) (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 2) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 2) (pow.f64 (cos.f64 (*.f64 x 1/2)) 2) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2)) (*.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2)) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2)) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))))) (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (cos.f64 (*.f64 x 1/2)) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2))) (cbrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 (*.f64 x 1/2) (*.f64 (+.f64 x eps) 1/2))) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) (sin.f64 (*.f64 x 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))) 1))))))

simplify114.0ms (0.6%)

Algorithm
egg-herbie
Rules
758×neg-mul-1_binary64
538×distribute-rgt-neg-out_binary64
465×distribute-lft-neg-out_binary64
394×+-commutative_binary64
382×unsub-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01582398
14932377
215772226
333842193
479362193
Stop Event
node limit
Counts
193 → 169
Calls
Call 1
Inputs
(sin.f64 (*.f64 1/2 eps))
(+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))
(+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(+.f64 (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 x))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (sin.f64 (*.f64 1/2 x)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x)))) (sin.f64 (*.f64 1/2 x))))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x)))) (+.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 3))))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(cos.f64 (*.f64 1/2 eps))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x))))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 x))
(+.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))))
(+.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 2)))))
(+.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 eps 3) (sin.f64 (*.f64 1/2 x)))) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 2))))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))))
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)) (*.f64 1/48 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))) (*.f64 -1/48 (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (+.f64 (*.f64 -1/24 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/8 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 (+.f64 (*.f64 -1/48 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/16 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4))) (+.f64 (*.f64 (+.f64 (*.f64 -1/48 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/16 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))
(+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))))
(+.f64 (*.f64 1/48 (*.f64 (pow.f64 eps 3) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
Outputs
(sin.f64 (*.f64 1/2 eps))
(+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))
(fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps)))
(+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(+.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(+.f64 (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (sin.f64 (*.f64 1/2 eps))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 x x) -1/8)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x x)) 1) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3))) (+.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(fma.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 3)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(+.f64 (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 x x) -1/8))) (fma.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) -1/48) (pow.f64 x 3) (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x x)) 1) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/2 x) (*.f64 -1/48 (pow.f64 x 3)))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 x x))) (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/2 x) (*.f64 -1/48 (pow.f64 x 3)))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 x))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (sin.f64 (*.f64 1/2 x)))
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (sin.f64 (*.f64 1/2 x)))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x)))) (sin.f64 (*.f64 1/2 x))))
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps eps)) (sin.f64 (*.f64 1/2 x))))
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 eps eps)) 1) (sin.f64 (*.f64 1/2 x))))
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 1 (*.f64 eps (*.f64 eps -1/8)))))
(+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 x)) eps)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x)))) (+.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 3))))))
(fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (+.f64 (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps eps)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 3)))))
(+.f64 (fma.f64 1/2 (*.f64 eps (cos.f64 (*.f64 1/2 x))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 eps eps)) 1) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 3))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 1 (*.f64 eps (*.f64 eps -1/8)))) (*.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 -1/48 (pow.f64 eps 3)) (*.f64 1/2 eps))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(sin.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 eps))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)))
(fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (cos.f64 (*.f64 1/2 eps)))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x))))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x))))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x -1/2))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x -1/2)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x x)) 1) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x -1/2)) (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 x x))) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x)) (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x x)) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 3))))))
(+.f64 (cos.f64 (*.f64 1/2 eps)) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 x x)) (fma.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (*.f64 (pow.f64 x 3) (*.f64 (sin.f64 (*.f64 1/2 eps)) 1/48)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 x -1/2) (*.f64 (pow.f64 x 3) 1/48))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 x x)) 1) (cos.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (pow.f64 x 3) 1/48) (*.f64 x -1/2))) (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 x x))) (cos.f64 (*.f64 1/2 eps))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 x))
(+.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))))
(fma.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (cos.f64 (*.f64 1/2 x)))
(fma.f64 (*.f64 eps -1/2) (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))
(+.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 2)))))
(+.f64 (cos.f64 (*.f64 1/2 x)) (fma.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps eps)))))
(+.f64 (cos.f64 (*.f64 1/2 x)) (fma.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 -1/8 (*.f64 eps eps)))))
(+.f64 (*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) -1/2)) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x))))
(+.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 1/48 (*.f64 (pow.f64 eps 3) (sin.f64 (*.f64 1/2 x)))) (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (pow.f64 eps 2))))))
(+.f64 (cos.f64 (*.f64 1/2 x)) (fma.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 x)) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps eps))))))
(+.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 -1/8 (*.f64 eps eps))) (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 (pow.f64 eps 3) 1/48) (*.f64 eps -1/2)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 eps -1/2) (*.f64 (pow.f64 eps 3) 1/48))) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps (+.f64 -1/2 (*.f64 (*.f64 eps eps) 1/48)))) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))
(cos.f64 (*.f64 1/2 (+.f64 eps x)))
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))
(*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))
(fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))
(fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))))
(fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))) (fma.f64 (pow.f64 eps 3) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))) -1/6) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))))
(fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (fma.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))) (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) -1/6)))))
(fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))))
(fma.f64 (*.f64 1/2 (*.f64 eps eps)) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))))
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)) (*.f64 1/48 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))) (*.f64 -1/48 (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))))
(fma.f64 (pow.f64 eps 4) (fma.f64 1/2 (fma.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 1/48 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) (*.f64 -1/48 (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))) (fma.f64 (pow.f64 eps 3) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))) -1/6) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))))
(fma.f64 (pow.f64 eps 4) (fma.f64 1/2 (fma.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 1/48 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) (+.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) -1/96) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) 1/96))) (fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (fma.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))) (*.f64 (pow.f64 eps 3) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) -1/6))))))
(fma.f64 (pow.f64 eps 4) (*.f64 (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))) -1/24) (fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6)))))
(+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))) (*.f64 (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))) (+.f64 (*.f64 1/2 (*.f64 eps eps)) (*.f64 (pow.f64 eps 4) -1/24))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -1/2 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (fma.f64 -1/2 (*.f64 x (*.f64 x (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (+.f64 (*.f64 (*.f64 x x) -1/2) 1) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (+.f64 1 (*.f64 (*.f64 x x) -1/2)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (+.f64 (*.f64 -1/24 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/8 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))))
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) (*.f64 (cos.f64 (*.f64 1/2 eps)) -1/6)) (*.f64 -1/2 (*.f64 (*.f64 x x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))) (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/6 (pow.f64 x 3))) (*.f64 (*.f64 x x) (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))))
(+.f64 (*.f64 (*.f64 x x) (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6)))))
(+.f64 (*.f64 (+.f64 1 (*.f64 (*.f64 x x) -1/2)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 eps x))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))
(fma.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))
(fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (*.f64 x x) -1/4)))
(*.f64 x (+.f64 (*.f64 1/2 (cos.f64 (*.f64 1/2 eps))) (*.f64 x (*.f64 (sin.f64 (*.f64 1/2 eps)) -1/4))))
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 (+.f64 (*.f64 -1/48 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/16 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(fma.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (fma.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) -1/12) (pow.f64 x 3) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x))))
(fma.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) -1/4 (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/12 (pow.f64 x 3)))))
(fma.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) -1/4 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 x 3) -1/12))))
(+.f64 (*.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 2))) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4))) (+.f64 (*.f64 (+.f64 (*.f64 -1/48 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/16 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3)) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(fma.f64 -1/4 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) (fma.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4)) (fma.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) -1/12) (pow.f64 x 3) (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))))
(fma.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 x x)) -1/4 (fma.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 eps)) (pow.f64 x 4)) (fma.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/12 (pow.f64 x 3))))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 1/2 x) (*.f64 (pow.f64 x 3) -1/12))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (*.f64 x x) -1/4) (*.f64 1/48 (pow.f64 x 4)))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))
(fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)) (*.f64 (*.f64 -1/2 eps) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))
(fma.f64 (*.f64 eps -1/2) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))))
(*.f64 (sin.f64 (*.f64 1/2 x)) (fma.f64 -1/2 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (cos.f64 (*.f64 1/2 x))))
(*.f64 (sin.f64 (*.f64 1/2 x)) (fma.f64 (*.f64 eps -1/2) (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))))
(+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))))
(fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps eps))) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)) (*.f64 (*.f64 -1/2 eps) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))
(fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps eps))) (fma.f64 (*.f64 eps -1/2) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))))
(+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 eps -1/2)) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) -1/2)) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x)))))
(+.f64 (*.f64 1/48 (*.f64 (pow.f64 eps 3) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (pow.f64 eps 2) (sin.f64 (*.f64 1/2 x))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (*.f64 -1/2 (*.f64 eps (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))))
(fma.f64 1/48 (*.f64 (pow.f64 eps 3) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps eps))) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)) (*.f64 (*.f64 -1/2 eps) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))))
(fma.f64 1/48 (*.f64 (pow.f64 eps 3) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (fma.f64 -1/8 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps eps))) (fma.f64 (*.f64 eps -1/2) (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x))))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x)))) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (+.f64 (*.f64 eps -1/2) (*.f64 (pow.f64 eps 3) 1/48))))
(*.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 x)) (*.f64 eps (+.f64 -1/2 (*.f64 (*.f64 eps eps) 1/48)))) (*.f64 (+.f64 1 (*.f64 eps (*.f64 eps -1/8))) (cos.f64 (*.f64 1/2 x)))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))
(*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 (+.f64 eps x))))

localize5.0ms (0%)

Compiler

Compiled 12 to 8 computations (33.3% saved)

localize10.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
1.8b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1))
Compiler

Compiled 18 to 10 computations (44.4% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@0
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1))
0.0ms
eps
@0
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1))
0.0ms
x
@-inf
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1))
0.0ms
x
@inf
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1))
0.0ms
eps
@-inf
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1))

rewrite51.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
650×pow1_binary64
594×add-log-exp_binary64
593×log1p-expm1-u_binary64
593×expm1-log1p-u_binary64
581×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
099
11469
215579
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (cos.f64 x) (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)) (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)) 2) (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)) (sqrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) -1) (+.f64 (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps))) (-.f64 1 (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps))) 1) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))))))

simplify76.0ms (0.4%)

Algorithm
egg-herbie
Rules
661×distribute-rgt-neg-in_binary64
570×fma-neg_binary64
506×distribute-lft-neg-in_binary64
352×neg-sub0_binary64
352×neg-mul-1_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
051348
1139339
2381316
31319306
42416300
54748300
67501300
Stop Event
node limit
Counts
45 → 40
Calls
Call 1
Inputs
(-.f64 (cos.f64 eps) 1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4))))) 1)
(-.f64 (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 eps) (pow.f64 x 6))) (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4)))))) 1)
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) 1)
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) 1)
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) 1)
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) 1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (cos.f64 x) 1)
(-.f64 (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))) 1)
(-.f64 (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))) 1)
(-.f64 (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 6) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))))) 1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
Outputs
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x))) 1))
(+.f64 (cos.f64 eps) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) -1))
(+.f64 (cos.f64 eps) (fma.f64 (*.f64 x x) (*.f64 (cos.f64 eps) -1/2) -1))
(fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (cos.f64 eps) -1)
(fma.f64 (cos.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))) -1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4))))) 1)
(+.f64 (+.f64 (cos.f64 eps) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4))))) -1)
(+.f64 (cos.f64 eps) (+.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 x 4) 1/24)) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) -1)))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 x x)) (*.f64 1/24 (pow.f64 x 4)))) -1))
(+.f64 (cos.f64 eps) (fma.f64 (cos.f64 eps) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/2 (*.f64 x x))) -1))
(fma.f64 (cos.f64 eps) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (+.f64 1 (*.f64 -1/2 (*.f64 x x)))) -1)
(-.f64 (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 eps) (pow.f64 x 6))) (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4)))))) 1)
(+.f64 (fma.f64 -1/720 (*.f64 (cos.f64 eps) (pow.f64 x 6)) (+.f64 (cos.f64 eps) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4)))))) -1)
(+.f64 (fma.f64 -1/720 (*.f64 (cos.f64 eps) (pow.f64 x 6)) (+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (cos.f64 eps)) (*.f64 (cos.f64 eps) (*.f64 (pow.f64 x 4) 1/24)))) -1)
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (cos.f64 eps)) (+.f64 (*.f64 (cos.f64 eps) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/720 (pow.f64 x 6)))) -1))
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 x x)) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/720 (pow.f64 x 6))))))
(+.f64 (cos.f64 eps) (fma.f64 (cos.f64 eps) (+.f64 (*.f64 1/24 (pow.f64 x 4)) (+.f64 (*.f64 -1/720 (pow.f64 x 6)) (*.f64 -1/2 (*.f64 x x)))) -1))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)
(-.f64 (cos.f64 x) 1)
(+.f64 (cos.f64 x) -1)
(-.f64 (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))) 1)
(+.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps))) 1))
(+.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) -1))
(fma.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x) -1)
(fma.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1) -1)
(-.f64 (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))) 1)
(+.f64 (fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps))))) -1)
(+.f64 (fma.f64 (*.f64 1/24 (pow.f64 eps 4)) (cos.f64 x) (cos.f64 x)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) -1))
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (fma.f64 1/24 (pow.f64 eps 4) 1))) -1)
(fma.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (fma.f64 1/24 (pow.f64 eps 4) 1)) -1)
(fma.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (fma.f64 -1/2 (*.f64 eps eps) 1)) -1)
(-.f64 (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 6) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))))) 1)
(+.f64 (fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (+.f64 (cos.f64 x) (fma.f64 -1/720 (*.f64 (cos.f64 x) (pow.f64 eps 6)) (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)))))) -1)
(+.f64 (+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) (*.f64 -1/720 (pow.f64 eps 6)))) (fma.f64 (*.f64 1/24 (pow.f64 eps 4)) (cos.f64 x) (cos.f64 x))) -1)
(fma.f64 (fma.f64 1/24 (pow.f64 eps 4) 1) (cos.f64 x) (fma.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6))) -1))
(+.f64 (*.f64 (cos.f64 x) (+.f64 (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 eps (*.f64 eps -1/2))) (fma.f64 1/24 (pow.f64 eps 4) 1))) -1)
(fma.f64 (cos.f64 x) (+.f64 (fma.f64 1/24 (pow.f64 eps 4) 1) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 eps (*.f64 eps -1/2)))) -1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(fma.f64 (cos.f64 eps) (cos.f64 x) -1)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))
0.0b
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)
1.5b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
2.4b
(cos.f64 (+.f64 x eps))
Compiler

Compiled 39 to 10 computations (74.4% saved)

series9.0ms (0.1%)

Counts
2 → 40
Calls

12 calls:

TimeVariablePointExpression
2.0ms
eps
@0
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)
2.0ms
x
@0
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)
1.0ms
x
@inf
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)
1.0ms
x
@0
(sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))
1.0ms
x
@-inf
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)

rewrite81.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
505×log-prod_binary64
480×fma-def_binary64
316×pow-prod-down_binary64
303×pow2_binary64
244×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01024
123824
2318024
Stop Event
node limit
Counts
2 → 159
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)
(sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (/.f64 (pow.f64 (cos.f64 x) 3) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (/.f64 (pow.f64 (cos.f64 x) 2) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/4) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3/4) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 5/6) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) (neg.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) (neg.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (neg.f64 (cos.f64 x)) 3)) (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (-.f64 (pow.f64 (neg.f64 (cos.f64 x)) 2) (*.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (neg.f64 (cos.f64 x)) 2)) (-.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (/.f64 1 (exp.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (cos.f64 x))) (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cbrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cbrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (neg.f64 (cbrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/4) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3/4) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/4) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3/4) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/4) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3/4) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (neg.f64 (sqrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (cos.f64 x))) 2) (cbrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (cos.f64 x))) (sqrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (cos.f64 x) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3/4) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/4) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3/4) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/4) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3/4) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/4) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 5/6) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 5/6) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 5/6) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/4) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 -2) (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) (hypot.f64 (cos.f64 (+.f64 x eps)) (sqrt.f64 (*.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) (sqrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x hypot.f64 (sqrt.f64 (neg.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 1))))))

simplify62.0ms (0.3%)

Algorithm
egg-herbie
Rules
663×fma-neg_binary64
591×distribute-rgt-neg-out_binary64
441×distribute-lft-neg-out_binary64
431×associate-*l*_binary64
419×associate-*r*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
080952
1225923
2726853
34182786
Stop Event
node limit
Counts
199 → 181
Calls
Call 1
Inputs
(-.f64 (cos.f64 eps) 1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 (-.f64 (+.f64 1/2 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 (cos.f64 eps) 1))) (*.f64 -1/2 (cos.f64 eps)))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (sin.f64 eps))) 2)) (pow.f64 x 2)) (*.f64 -1 (*.f64 x (sin.f64 eps))))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 (-.f64 (+.f64 1/2 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 (cos.f64 eps) 1))) (*.f64 -1/2 (cos.f64 eps)))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (sin.f64 eps))) 2)) (pow.f64 x 2)) (+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (sin.f64 eps))) 2)) (sin.f64 eps)) (-.f64 (cos.f64 eps) 1))) (*.f64 -1/6 (sin.f64 eps)))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (sin.f64 eps))) 2)) (sin.f64 eps)) (-.f64 (cos.f64 eps) 1)))) (pow.f64 x 3)) (*.f64 -1 (*.f64 x (sin.f64 eps)))))) 1)
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(sqrt.f64 (-.f64 (cos.f64 eps) 1))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (*.f64 (sin.f64 eps) x))) (sqrt.f64 (-.f64 (cos.f64 eps) 1)))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (*.f64 (sin.f64 eps) x))) (+.f64 (sqrt.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 1/2 (*.f64 (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (sin.f64 eps))) 2)) (pow.f64 x 2)) (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)))))))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (*.f64 (pow.f64 x 3) (+.f64 (*.f64 -1/6 (sin.f64 eps)) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (sin.f64 eps))) 2)) (sin.f64 eps)) (-.f64 (cos.f64 eps) 1))))))) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (*.f64 (sin.f64 eps) x))) (+.f64 (sqrt.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 1/2 (*.f64 (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (sin.f64 eps))) 2)) (pow.f64 x 2)) (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))))))))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
Outputs
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (*.f64 (neg.f64 x) (sin.f64 eps)) 1))
(+.f64 (cos.f64 eps) (fma.f64 (neg.f64 x) (sin.f64 eps) -1))
(-.f64 (cos.f64 eps) (+.f64 (*.f64 x (sin.f64 eps)) 1))
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 (-.f64 (+.f64 1/2 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 (cos.f64 eps) 1))) (*.f64 -1/2 (cos.f64 eps)))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (sin.f64 eps))) 2)) (pow.f64 x 2)) (*.f64 -1 (*.f64 x (sin.f64 eps))))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 (+.f64 1/2 (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) -1)) (*.f64 (cos.f64 eps) -1/2)) (pow.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2))) (*.f64 x x) (*.f64 (neg.f64 x) (sin.f64 eps))) 1))
(+.f64 -1 (+.f64 (cos.f64 eps) (-.f64 (*.f64 x (*.f64 x (+.f64 1/2 (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) -1)) (*.f64 (cos.f64 eps) -1/2)) (pow.f64 (*.f64 (sin.f64 eps) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2))))) (*.f64 x (sin.f64 eps)))))
(+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (-.f64 (*.f64 x (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) -1)) (fma.f64 (cos.f64 eps) -1/2 1/2)) (pow.f64 (*.f64 (sin.f64 eps) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2))) (sin.f64 eps))))
(+.f64 (cos.f64 eps) (fma.f64 x (-.f64 (*.f64 x (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 1/4 (-.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) -1)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 1 (+.f64 (cos.f64 eps) -1)))))))) (sin.f64 eps)) -1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 (-.f64 (+.f64 1/2 (+.f64 (*.f64 1/4 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 (cos.f64 eps) 1))) (*.f64 -1/2 (cos.f64 eps)))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (sin.f64 eps))) 2)) (pow.f64 x 2)) (+.f64 (*.f64 (+.f64 (*.f64 -1 (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (sin.f64 eps))) 2)) (sin.f64 eps)) (-.f64 (cos.f64 eps) 1))) (*.f64 -1/6 (sin.f64 eps)))) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (sin.f64 eps))) 2)) (sin.f64 eps)) (-.f64 (cos.f64 eps) 1)))) (pow.f64 x 3)) (*.f64 -1 (*.f64 x (sin.f64 eps)))))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 (+.f64 1/2 (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) -1)) (*.f64 (cos.f64 eps) -1/2)) (pow.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2))) (*.f64 x x) (fma.f64 (fma.f64 -1 (fma.f64 -1/2 (/.f64 (+.f64 1/2 (-.f64 (*.f64 (cos.f64 eps) -1/2) (pow.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2))) (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps))) (*.f64 (sin.f64 eps) -1/6)) (*.f64 -1/2 (/.f64 (+.f64 1/2 (-.f64 (*.f64 (cos.f64 eps) -1/2) (pow.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2))) (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps))))) (pow.f64 x 3) (*.f64 (neg.f64 x) (sin.f64 eps)))) 1))
(+.f64 (cos.f64 eps) (+.f64 (fma.f64 (+.f64 1/2 (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) -1)) (*.f64 (cos.f64 eps) -1/2)) (pow.f64 (*.f64 (sin.f64 eps) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2))) (*.f64 x x) (fma.f64 (-.f64 (*.f64 -1/2 (*.f64 (/.f64 (-.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (pow.f64 (*.f64 (sin.f64 eps) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2)) (+.f64 (cos.f64 eps) -1)) (sin.f64 eps))) (fma.f64 -1/2 (*.f64 (/.f64 (-.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (pow.f64 (*.f64 (sin.f64 eps) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2)) (+.f64 (cos.f64 eps) -1)) (sin.f64 eps)) (*.f64 (sin.f64 eps) -1/6))) (pow.f64 x 3) (*.f64 x (neg.f64 (sin.f64 eps))))) -1))
(+.f64 (cos.f64 eps) (+.f64 -1 (fma.f64 (+.f64 (*.f64 (sin.f64 eps) 1/6) (*.f64 (*.f64 (sin.f64 eps) (/.f64 (-.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (pow.f64 (*.f64 (sin.f64 eps) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2)) (+.f64 (cos.f64 eps) -1))) 0)) (pow.f64 x 3) (*.f64 x (-.f64 (*.f64 x (-.f64 (fma.f64 1/4 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) -1)) (fma.f64 (cos.f64 eps) -1/2 1/2)) (pow.f64 (*.f64 (sin.f64 eps) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2))) (sin.f64 eps))))))
(fma.f64 (*.f64 x x) (+.f64 (*.f64 x (*.f64 (sin.f64 eps) 1/6)) (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 1/4 (-.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (cos.f64 eps) -1)) (*.f64 (pow.f64 (sin.f64 eps) 2) (/.f64 1 (+.f64 (cos.f64 eps) -1)))))))) (-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(sqrt.f64 (-.f64 (cos.f64 eps) 1))
(sqrt.f64 (+.f64 (cos.f64 eps) -1))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (*.f64 (sin.f64 eps) x))) (sqrt.f64 (-.f64 (cos.f64 eps) 1)))
(fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (*.f64 x (sin.f64 eps))) (sqrt.f64 (+.f64 (cos.f64 eps) -1)))
(fma.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)))) (*.f64 x (sin.f64 eps)) (sqrt.f64 (+.f64 (cos.f64 eps) -1)))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (*.f64 (sin.f64 eps) x))) (+.f64 (sqrt.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 1/2 (*.f64 (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (sin.f64 eps))) 2)) (pow.f64 x 2)) (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)))))))
(+.f64 (fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (*.f64 x (sin.f64 eps))) (sqrt.f64 (+.f64 (cos.f64 eps) -1))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (*.f64 (*.f64 x x) (+.f64 1/2 (-.f64 (*.f64 (cos.f64 eps) -1/2) (pow.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2)))))))
(fma.f64 -1/2 (*.f64 x (*.f64 (sin.f64 eps) (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (*.f64 (*.f64 x x) (-.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (pow.f64 (*.f64 (sin.f64 eps) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2)))) (sqrt.f64 (+.f64 (cos.f64 eps) -1))))
(+.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (+.f64 (*.f64 x (*.f64 (sin.f64 eps) -1/2)) (*.f64 (*.f64 x x) (*.f64 1/2 (-.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (pow.f64 (*.f64 (sin.f64 eps) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2)))))))
(+.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (+.f64 (*.f64 -1/2 (*.f64 x (sin.f64 eps))) (*.f64 (*.f64 x x) (*.f64 1/2 (-.f64 (*.f64 (cos.f64 eps) -1/2) (fma.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) (*.f64 1/4 (pow.f64 (sin.f64 eps) 2)) -1/2)))))))
(+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (*.f64 (pow.f64 x 3) (+.f64 (*.f64 -1/6 (sin.f64 eps)) (*.f64 -1/2 (/.f64 (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (sin.f64 eps))) 2)) (sin.f64 eps)) (-.f64 (cos.f64 eps) 1))))))) (+.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (*.f64 (sin.f64 eps) x))) (+.f64 (sqrt.f64 (-.f64 (cos.f64 eps) 1)) (*.f64 1/2 (*.f64 (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 (*.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (sin.f64 eps))) 2)) (pow.f64 x 2)) (sqrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))))))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (*.f64 (fma.f64 -1/2 (/.f64 (+.f64 1/2 (-.f64 (*.f64 (cos.f64 eps) -1/2) (pow.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2))) (/.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 eps))) (*.f64 (sin.f64 eps) -1/6)) (pow.f64 x 3))) (+.f64 (fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (*.f64 x (sin.f64 eps))) (sqrt.f64 (+.f64 (cos.f64 eps) -1))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (*.f64 (*.f64 x x) (+.f64 1/2 (-.f64 (*.f64 (cos.f64 eps) -1/2) (pow.f64 (*.f64 -1/2 (*.f64 (sin.f64 eps) (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2))))))))
(+.f64 (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (*.f64 (*.f64 x x) (-.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (pow.f64 (*.f64 (sin.f64 eps) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2)))) (sqrt.f64 (+.f64 (cos.f64 eps) -1))) (*.f64 (*.f64 -1/2 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)))) (+.f64 (*.f64 (fma.f64 -1/2 (*.f64 (/.f64 (-.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (pow.f64 (*.f64 (sin.f64 eps) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2)) (+.f64 (cos.f64 eps) -1)) (sin.f64 eps)) (*.f64 (sin.f64 eps) -1/6)) (pow.f64 x 3)) (*.f64 x (sin.f64 eps)))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (fma.f64 (fma.f64 -1/2 (*.f64 (sin.f64 eps) (/.f64 (-.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (pow.f64 (*.f64 (sin.f64 eps) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2)) (+.f64 (cos.f64 eps) -1))) (*.f64 (sin.f64 eps) -1/6)) (pow.f64 x 3) (*.f64 x (sin.f64 eps)))) (fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (*.f64 (*.f64 x x) (*.f64 1/2 (-.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (pow.f64 (*.f64 (sin.f64 eps) (*.f64 -1/2 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))) 2)))) (sqrt.f64 (+.f64 (cos.f64 eps) -1))))
(fma.f64 -1/2 (*.f64 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (fma.f64 (fma.f64 -1/2 (*.f64 (sin.f64 eps) (/.f64 (-.f64 (*.f64 (cos.f64 eps) -1/2) (fma.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) (*.f64 1/4 (pow.f64 (sin.f64 eps) 2)) -1/2)) (+.f64 (cos.f64 eps) -1))) (*.f64 (sin.f64 eps) -1/6)) (pow.f64 x 3) (*.f64 x (sin.f64 eps)))) (fma.f64 (sqrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (*.f64 (*.f64 x x) (*.f64 1/2 (-.f64 (*.f64 (cos.f64 eps) -1/2) (fma.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) (*.f64 1/4 (pow.f64 (sin.f64 eps) 2)) -1/2)))) (sqrt.f64 (+.f64 (cos.f64 eps) -1))))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(sqrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))

localize57.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 2)
0.8b
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 2))
3.1b
(*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))
10.6b
(sqrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
Compiler

Compiled 92 to 59 computations (35.9% saved)

series17.0ms (0.1%)

Counts
3 → 21
Calls

18 calls:

TimeVariablePointExpression
2.0ms
x
@inf
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 2))
1.0ms
eps
@0
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 2))
1.0ms
x
@0
(sqrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
1.0ms
x
@0
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 2)
1.0ms
eps
@-inf
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 2))

rewrite89.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
924×prod-diff_binary64
409×fma-def_binary64
301×expm1-udef_binary64
301×log1p-udef_binary64
250×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01859
138859
2428959
Stop Event
node limit
Counts
3 → 91
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 2))
(pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) (cbrt.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))) (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) (sqrt.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 x)) (sqrt.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 1/4) (pow.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) 2) 1/2) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) 1/2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))) (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))) 1) (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))) (pow.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))) 2) (cbrt.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))) (sqrt.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))) 3) (pow.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 3)) (fma.f64 (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))) (-.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 2) (*.f64 (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))) (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps)))) (pow.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 2)) (-.f64 (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))) (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) (sin.f64 x)) (exp.f64 (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))) (exp.f64 (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps)))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (*.f64 eps (*.f64 -1/2 (*.f64 (cos.f64 x) eps))))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 1/6 (pow.f64 eps 3)) (sin.f64 x)) (*.f64 (neg.f64 eps) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 x) (*.f64 1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (neg.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 2) (*.f64 (cbrt.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (sin.f64 x) 2)) (*.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))) (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) 2) (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) (*.f64 (sqrt.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 1/4) (*.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 1/4) (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) (pow.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 1/4)) (pow.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 x) (pow.f64 (cbrt.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 2)) (cbrt.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 x) (sqrt.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) (sqrt.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (cbrt.f64 (pow.f64 (sin.f64 x) 2))) (cbrt.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sqrt.f64 (sin.f64 x))) (sqrt.f64 (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) (cbrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))) (cbrt.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) (sqrt.f64 (sin.f64 x))) (sqrt.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 3) 1/216) (pow.f64 eps 3)) (sin.f64 x)) (fma.f64 eps (fma.f64 1/6 (pow.f64 eps 3) eps) (*.f64 (pow.f64 eps 6) 1/36)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (pow.f64 eps 6) 1/36) (*.f64 eps eps)) (sin.f64 x)) (fma.f64 1/6 (pow.f64 eps 3) eps))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 3) 1/216) (pow.f64 eps 3))) (fma.f64 eps (fma.f64 1/6 (pow.f64 eps 3) eps) (*.f64 (pow.f64 eps 6) 1/36)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 (pow.f64 eps 6) 1/36) (*.f64 eps eps))) (fma.f64 1/6 (pow.f64 eps 3) eps))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) (sin.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 x) 3) (pow.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) 3) (pow.f64 (sin.f64 x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 x) (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 x) (*.f64 1/6 (pow.f64 eps 3)) (*.f64 (sin.f64 x) (neg.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/6 (pow.f64 eps 3)) (sin.f64 x) (*.f64 (neg.f64 eps) (sin.f64 x)))))))

simplify109.0ms (0.6%)

Algorithm
egg-herbie
Rules
555×fma-neg_binary64
397×distribute-rgt-neg-out_binary64
383×distribute-lft-neg-out_binary64
366×fma-def_binary64
328×distribute-lft-out_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
023411
150411
2104411
3292411
4982403
52420403
64570403
76385403
Stop Event
node limit
Counts
112 → 100
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(sqrt.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(sqrt.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(sqrt.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(*.f64 -1/2 (pow.f64 eps 2))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))
(*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))
(*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))
(*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))
Outputs
(sqrt.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(sqrt.f64 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)))
(sqrt.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(sqrt.f64 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)))
(sqrt.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(sqrt.f64 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)))
(sqrt.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(sqrt.f64 (*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x)))
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(*.f64 eps (*.f64 eps -1/2))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x))))) (sin.f64 x)))
(*.f64 eps (fma.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x)))) (neg.f64 (sin.f64 x))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x))))) (sin.f64 x)))
(*.f64 eps (fma.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x)))) (neg.f64 (sin.f64 x))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x))))) (sin.f64 x)))
(*.f64 eps (fma.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x)))) (neg.f64 (sin.f64 x))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x))))) (sin.f64 x)))
(*.f64 eps (fma.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x)))) (neg.f64 (sin.f64 x))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x))))) (sin.f64 x)))
(*.f64 eps (fma.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x)))) (neg.f64 (sin.f64 x))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x))))) (sin.f64 x)))
(*.f64 eps (fma.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x)))) (neg.f64 (sin.f64 x))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x))))) (sin.f64 x)))
(*.f64 eps (fma.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x)))) (neg.f64 (sin.f64 x))))
(+.f64 (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)) (*.f64 -1/2 (*.f64 (cos.f64 x) (pow.f64 eps 2))))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (cos.f64 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x))) (*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x)))
(fma.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (cos.f64 x)))))
(*.f64 eps (-.f64 (*.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x))))) (sin.f64 x)))
(*.f64 eps (fma.f64 eps (fma.f64 -1/2 (cos.f64 x) (*.f64 eps (*.f64 1/6 (sin.f64 x)))) (neg.f64 (sin.f64 x))))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))
(*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))
(*.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) (sin.f64 x))
(*.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) (sin.f64 x))

eval464.0ms (2.6%)

Compiler

Compiled 19383 to 10251 computations (47.1% saved)

prune464.0ms (2.6%)

Pruning

82 alts after pruning (77 fresh and 5 done)

PrunedKeptTotal
New73317750
Fresh76067
Picked101
Done257
Total74382825
Error
0.1b
Counts
825 → 82
Alt Table
Click to see full alt table
StatusErrorProgram
44.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2)
40.8b
(-.f64 (cos.f64 eps) 1)
41.0b
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
31.3b
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3))) -2)
32.1b
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 3))
50.5b
(*.f64 eps (*.f64 eps -1/2))
24.6b
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
46.5b
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
42.2b
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
53.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2)
41.0b
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
24.4b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (+.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 1)))
40.5b
(-.f64 (expm1.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) (cos.f64 x))
54.7b
(-.f64 (cos.f64 x) 1)
45.4b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2)
24.3b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
31.7b
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
46.2b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
40.9b
(*.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) 1) -2)
24.7b
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
31.4b
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x)))
35.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2)
41.0b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
41.3b
(-.f64 (-.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 1) (cos.f64 x))
41.2b
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
36.6b
(*.f64 (*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))) -2)
41.3b
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
24.3b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
55.4b
(-.f64 (cos.f64 x) (cos.f64 x))
24.5b
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps))) (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
33.1b
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2)
40.1b
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
55.2b
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
36.6b
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2)
36.5b
(*.f64 (sin.f64 x) (neg.f64 eps))
28.4b
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2)
50.8b
(*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2)
24.3b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (log1p.f64 (expm1.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))
17.6b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2)
46.7b
(pow.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))) 2)
24.3b
(-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
47.4b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2)
41.1b
(log1p.f64 (expm1.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))
41.2b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
27.5b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (expm1.f64 (log1p.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))
39.8b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x)))
55.7b
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)
18.3b
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
24.5b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3))))
31.5b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (+.f64 (*.f64 eps (*.f64 eps -1/8)) 1) (sin.f64 x)))) -2)
41.4b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
37.2b
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2)
24.3b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (+.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x))))
24.3b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
50.6b
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
35.6b
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
40.9b
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
43.1b
(fma.f64 (cos.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))) -1)
41.0b
(log.f64 (exp.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))
50.6b
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
49.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2)
41.0b
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
54.5b
(sqrt.f64 (pow.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1) 2))
49.2b
(*.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1))
41.2b
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
34.8b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (pow.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 2)))
40.8b
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
35.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
55.0b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2)
36.0b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
24.4b
(-.f64 (expm1.f64 (log1p.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))))) (cos.f64 x))
24.3b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
40.8b
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
31.7b
(*.f64 (+.f64 (*.f64 (sin.f64 x) (*.f64 eps (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4))))) -2)
40.4b
(-.f64 (cos.f64 eps) (cos.f64 x))
46.7b
(pow.f64 (sqrt.f64 (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))) 2)
54.1b
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
17.3b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (expm1.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) (sin.f64 (*.f64 x 1/2))))) -2)
47.5b
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 eps (*.f64 eps -1/2)))
31.6b
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
24.9b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
50.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2)
Compiler

Compiled 2597 to 1884 computations (27.5% saved)

localize241.0ms (1.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (expm1.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) (sin.f64 (*.f64 x 1/2)))))
0.3b
(log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))
2.3b
(cos.f64 (*.f64 (+.f64 x eps) 1/2))
2.5b
(sin.f64 (*.f64 (+.f64 x eps) 1/2))
Compiler

Compiled 194 to 114 computations (41.2% saved)

series317.0ms (1.8%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
165.0ms
eps
@-inf
(log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))
74.0ms
eps
@inf
(log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))
40.0ms
x
@inf
(log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))
28.0ms
x
@-inf
(log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))
3.0ms
x
@0
(log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))

rewrite696.0ms (3.9%)

Algorithm
batch-egg-rewrite
Rules
487×fma-neg_binary64
358×expm1-udef_binary64
358×log1p-udef_binary64
231×add-sqr-sqrt_binary64
229×pow1_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02156
145431
2645331
Stop Event
node limit
Counts
2 → 61
Calls
Call 1
Inputs
(log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))
(*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (expm1.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) (sin.f64 (*.f64 x 1/2)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) (pow.f64 (cbrt.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) 2) (cbrt.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) (sqrt.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) (fma.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (*.f64 (sin.f64 (*.f64 x 1/2)) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 eps 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (*.f64 x 1/2)) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 eps 1/2)))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) 1) (*.f64 (*.f64 (sin.f64 (*.f64 x 1/2)) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 eps 1/2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) 3) (pow.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2) 3)) (+.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2)) (+.f64 (*.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)) (*.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) 3) (pow.f64 (*.f64 (sin.f64 (*.f64 x 1/2)) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 eps 1/2)))) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))))) (-.f64 (*.f64 (*.f64 (sin.f64 (*.f64 x 1/2)) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 eps 1/2)))) (*.f64 (sin.f64 (*.f64 x 1/2)) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 eps 1/2))))) (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (*.f64 (sin.f64 (*.f64 x 1/2)) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 eps 1/2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2)) (*.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2))) (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))))) (*.f64 (*.f64 (sin.f64 (*.f64 x 1/2)) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 eps 1/2)))) (*.f64 (sin.f64 (*.f64 x 1/2)) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 eps 1/2)))))) (-.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (*.f64 (sin.f64 (*.f64 x 1/2)) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 eps 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 3) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 3)) (sin.f64 (*.f64 eps 1/2))) (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) (-.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 3) (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 3))) (+.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) (-.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) (sin.f64 (*.f64 eps 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 eps 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 (*.f64 eps 1/2))) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3) (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (sin.f64 (*.f64 x 1/2)) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 eps 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (cos.f64 (*.f64 x 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (*.f64 x 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 eps 1/2)) (*.f64 (sin.f64 (*.f64 x 1/2)) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 eps 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cos.f64 (*.f64 x 1/2)) 2) (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 2) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) 2) (pow.f64 (cos.f64 (*.f64 x 1/2)) 2) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2)) (*.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))))) (sqrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2)) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2)) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2))) (cos.f64 (*.f64 x 1/2)) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (cos.f64 (*.f64 x 1/2))) (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) 2))) (cbrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2)))) (neg.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))) 2)))))))

simplify80.0ms (0.4%)

Algorithm
egg-herbie
Rules
804×fma-def_binary64
529×distribute-rgt-neg-out_binary64
398×*-commutative_binary64
266×distribute-rgt-in_binary64
263×distribute-lft-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01601875
15021774
217641614
364321611
Stop Event
node limit
Counts
109 → 100
Calls
Call 1
Inputs
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))))
(+.f64 (log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps)))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (+.f64 1 (cos.f64 (*.f64 1/2 eps))))))
(+.f64 (log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps)))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))) 2))) (*.f64 -1/4 (/.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 1 (cos.f64 (*.f64 1/2 eps)))))) (pow.f64 x 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (+.f64 1 (cos.f64 (*.f64 1/2 eps)))))))
(+.f64 (*.f64 1/6 (*.f64 (+.f64 (*.f64 -3/8 (/.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))) 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))) 3))) (*.f64 1/8 (/.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 1 (cos.f64 (*.f64 1/2 eps))))))) (pow.f64 x 3))) (+.f64 (log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps)))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))) 2))) (*.f64 -1/4 (/.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 1 (cos.f64 (*.f64 1/2 eps)))))) (pow.f64 x 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (+.f64 1 (cos.f64 (*.f64 1/2 eps))))))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))))
(log.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (+.f64 (cos.f64 (*.f64 1/2 x)) 1))) (log.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (+.f64 (cos.f64 (*.f64 1/2 x)) 1))) (+.f64 (log.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1)) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (pow.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1) 2))) (*.f64 -1/4 (/.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (cos.f64 (*.f64 1/2 x)) 1))))))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 3) (pow.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1) 3))) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (pow.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1) 2))) (*.f64 1/8 (/.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (cos.f64 (*.f64 1/2 x)) 1))))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (+.f64 (cos.f64 (*.f64 1/2 x)) 1))) (+.f64 (log.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1)) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (pow.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1) 2))) (*.f64 -1/4 (/.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (cos.f64 (*.f64 1/2 x)) 1)))))))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))))
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))))
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)) (*.f64 1/48 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))) (*.f64 -1/48 (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (+.f64 (*.f64 -1/24 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/8 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
Outputs
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))))
(log1p.f64 (cos.f64 (*.f64 1/2 eps)))
(+.f64 (log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps)))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (+.f64 1 (cos.f64 (*.f64 1/2 eps))))))
(+.f64 (log1p.f64 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/2 (/.f64 (sin.f64 (*.f64 1/2 eps)) (/.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))) x))))
(fma.f64 -1/2 (*.f64 (tan.f64 (/.f64 eps 4)) x) (log1p.f64 (cos.f64 (*.f64 1/2 eps))))
(fma.f64 -1/2 (*.f64 x (tan.f64 (*.f64 1/4 eps))) (log1p.f64 (cos.f64 (*.f64 1/2 eps))))
(+.f64 (log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps)))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))) 2))) (*.f64 -1/4 (/.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 1 (cos.f64 (*.f64 1/2 eps)))))) (pow.f64 x 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (+.f64 1 (cos.f64 (*.f64 1/2 eps)))))))
(+.f64 (log1p.f64 (cos.f64 (*.f64 1/2 eps))) (fma.f64 1/2 (*.f64 (*.f64 -1/4 (+.f64 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))) 2)) (/.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 1 (cos.f64 (*.f64 1/2 eps)))))) (*.f64 x x)) (*.f64 -1/2 (/.f64 (sin.f64 (*.f64 1/2 eps)) (/.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))) x)))))
(+.f64 (log1p.f64 (cos.f64 (*.f64 1/2 eps))) (fma.f64 (*.f64 -1/8 (+.f64 (*.f64 (tan.f64 (/.f64 eps 4)) (tan.f64 (/.f64 eps 4))) (/.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 1 (cos.f64 (*.f64 1/2 eps)))))) (*.f64 x x) (*.f64 -1/2 (*.f64 (tan.f64 (/.f64 eps 4)) x))))
(fma.f64 (*.f64 x x) (*.f64 -1/8 (fma.f64 (tan.f64 (*.f64 1/4 eps)) (tan.f64 (*.f64 1/4 eps)) (/.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 1 (cos.f64 (*.f64 1/2 eps)))))) (fma.f64 -1/2 (*.f64 x (tan.f64 (*.f64 1/4 eps))) (log1p.f64 (cos.f64 (*.f64 1/2 eps)))))
(+.f64 (*.f64 1/6 (*.f64 (+.f64 (*.f64 -3/8 (/.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (cos.f64 (*.f64 1/2 eps))) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))) 2))) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))) 3))) (*.f64 1/8 (/.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 1 (cos.f64 (*.f64 1/2 eps))))))) (pow.f64 x 3))) (+.f64 (log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps)))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))) 2))) (*.f64 -1/4 (/.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 1 (cos.f64 (*.f64 1/2 eps)))))) (pow.f64 x 2))) (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (+.f64 1 (cos.f64 (*.f64 1/2 eps))))))))
(fma.f64 1/6 (*.f64 (fma.f64 -3/8 (/.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (sin.f64 (*.f64 1/2 eps))) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))) 2)) (fma.f64 -1/4 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 3) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))) 3)) (*.f64 1/8 (tan.f64 (/.f64 (*.f64 1/2 eps) 2))))) (pow.f64 x 3)) (+.f64 (log1p.f64 (cos.f64 (*.f64 1/2 eps))) (fma.f64 1/2 (*.f64 (*.f64 -1/4 (+.f64 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))) 2)) (/.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 1 (cos.f64 (*.f64 1/2 eps)))))) (*.f64 x x)) (*.f64 -1/2 (/.f64 (sin.f64 (*.f64 1/2 eps)) (/.f64 (+.f64 1 (cos.f64 (*.f64 1/2 eps))) x))))))
(+.f64 (fma.f64 (*.f64 -1/8 (+.f64 (*.f64 (tan.f64 (/.f64 eps 4)) (tan.f64 (/.f64 eps 4))) (/.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 1 (cos.f64 (*.f64 1/2 eps)))))) (*.f64 x x) (*.f64 -1/2 (*.f64 (tan.f64 (/.f64 eps 4)) x))) (fma.f64 1/6 (*.f64 (fma.f64 -3/8 (*.f64 (/.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 1 (cos.f64 (*.f64 1/2 eps)))) (tan.f64 (/.f64 eps 4))) (fma.f64 -1/4 (*.f64 (*.f64 (tan.f64 (/.f64 eps 4)) (tan.f64 (/.f64 eps 4))) (tan.f64 (/.f64 eps 4))) (*.f64 1/8 (tan.f64 (/.f64 eps 4))))) (pow.f64 x 3)) (log1p.f64 (cos.f64 (*.f64 1/2 eps)))))
(fma.f64 1/6 (*.f64 (fma.f64 -3/8 (/.f64 (*.f64 (cos.f64 (*.f64 1/2 eps)) (tan.f64 (*.f64 1/4 eps))) (+.f64 1 (cos.f64 (*.f64 1/2 eps)))) (fma.f64 -1/4 (pow.f64 (tan.f64 (*.f64 1/4 eps)) 3) (*.f64 1/8 (tan.f64 (*.f64 1/4 eps))))) (pow.f64 x 3)) (fma.f64 (*.f64 x x) (*.f64 -1/8 (fma.f64 (tan.f64 (*.f64 1/4 eps)) (tan.f64 (*.f64 1/4 eps)) (/.f64 (cos.f64 (*.f64 1/2 eps)) (+.f64 1 (cos.f64 (*.f64 1/2 eps)))))) (fma.f64 -1/2 (*.f64 x (tan.f64 (*.f64 1/4 eps))) (log1p.f64 (cos.f64 (*.f64 1/2 eps))))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(log.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 x))))
(log1p.f64 (cos.f64 (*.f64 1/2 x)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (+.f64 (cos.f64 (*.f64 1/2 x)) 1))) (log.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1)))
(fma.f64 -1/2 (/.f64 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (+.f64 1 (cos.f64 (*.f64 1/2 x)))) (log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 x)))))
(fma.f64 -1/2 (/.f64 (sin.f64 (*.f64 1/2 x)) (/.f64 (+.f64 1 (cos.f64 (*.f64 1/2 x))) eps)) (log1p.f64 (cos.f64 (*.f64 1/2 x))))
(fma.f64 -1/2 (*.f64 (tan.f64 (/.f64 x 4)) eps) (log1p.f64 (cos.f64 (*.f64 1/2 x))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (+.f64 (cos.f64 (*.f64 1/2 x)) 1))) (+.f64 (log.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1)) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (pow.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1) 2))) (*.f64 -1/4 (/.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (cos.f64 (*.f64 1/2 x)) 1))))))))
(+.f64 (fma.f64 -1/2 (/.f64 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (+.f64 1 (cos.f64 (*.f64 1/2 x)))) (log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 x))))) (*.f64 1/2 (*.f64 (*.f64 eps eps) (*.f64 -1/4 (+.f64 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 x))) 2)) (/.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 1 (cos.f64 (*.f64 1/2 x)))))))))
(fma.f64 -1/2 (/.f64 (sin.f64 (*.f64 1/2 x)) (/.f64 (+.f64 1 (cos.f64 (*.f64 1/2 x))) eps)) (fma.f64 1/2 (*.f64 eps (*.f64 eps (*.f64 -1/4 (+.f64 (*.f64 (tan.f64 (/.f64 (*.f64 1/2 x) 2)) (tan.f64 (/.f64 (*.f64 1/2 x) 2))) (/.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 1 (cos.f64 (*.f64 1/2 x)))))))) (log1p.f64 (cos.f64 (*.f64 1/2 x)))))
(fma.f64 -1/2 (*.f64 (tan.f64 (/.f64 x 4)) eps) (fma.f64 (*.f64 -1/4 (*.f64 1/2 (*.f64 eps eps))) (fma.f64 (tan.f64 (/.f64 x 4)) (tan.f64 (/.f64 x 4)) (/.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 1 (cos.f64 (*.f64 1/2 x))))) (log1p.f64 (cos.f64 (*.f64 1/2 x)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 3) (pow.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1) 3))) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (pow.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1) 2))) (*.f64 1/8 (/.f64 (sin.f64 (*.f64 1/2 x)) (+.f64 (cos.f64 (*.f64 1/2 x)) 1))))))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (+.f64 (cos.f64 (*.f64 1/2 x)) 1))) (+.f64 (log.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1)) (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/4 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (pow.f64 (+.f64 (cos.f64 (*.f64 1/2 x)) 1) 2))) (*.f64 -1/4 (/.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 (cos.f64 (*.f64 1/2 x)) 1)))))))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (fma.f64 -1/4 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 3) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 x))) 3)) (fma.f64 -3/8 (/.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 x))) 2)) (/.f64 (*.f64 1/8 (sin.f64 (*.f64 1/2 x))) (+.f64 1 (cos.f64 (*.f64 1/2 x))))))) (+.f64 (fma.f64 -1/2 (/.f64 (*.f64 eps (sin.f64 (*.f64 1/2 x))) (+.f64 1 (cos.f64 (*.f64 1/2 x)))) (log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 x))))) (*.f64 1/2 (*.f64 (*.f64 eps eps) (*.f64 -1/4 (+.f64 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 x))) 2)) (/.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 1 (cos.f64 (*.f64 1/2 x))))))))))
(fma.f64 1/6 (*.f64 (pow.f64 eps 3) (fma.f64 -1/4 (/.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 3) (pow.f64 (+.f64 1 (cos.f64 (*.f64 1/2 x))) 3)) (fma.f64 -3/8 (*.f64 (/.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 1 (cos.f64 (*.f64 1/2 x)))) (tan.f64 (/.f64 (*.f64 1/2 x) 2))) (*.f64 1/8 (tan.f64 (/.f64 (*.f64 1/2 x) 2)))))) (fma.f64 -1/2 (/.f64 (sin.f64 (*.f64 1/2 x)) (/.f64 (+.f64 1 (cos.f64 (*.f64 1/2 x))) eps)) (fma.f64 1/2 (*.f64 eps (*.f64 eps (*.f64 -1/4 (+.f64 (*.f64 (tan.f64 (/.f64 (*.f64 1/2 x) 2)) (tan.f64 (/.f64 (*.f64 1/2 x) 2))) (/.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 1 (cos.f64 (*.f64 1/2 x)))))))) (log1p.f64 (cos.f64 (*.f64 1/2 x))))))
(fma.f64 -1/2 (*.f64 (tan.f64 (/.f64 x 4)) eps) (fma.f64 (fma.f64 -1/4 (pow.f64 (tan.f64 (/.f64 x 4)) 3) (fma.f64 -3/8 (/.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (tan.f64 (/.f64 x 4))) (+.f64 1 (cos.f64 (*.f64 1/2 x)))) (*.f64 1/8 (tan.f64 (/.f64 x 4))))) (*.f64 1/6 (pow.f64 eps 3)) (fma.f64 (*.f64 -1/4 (*.f64 1/2 (*.f64 eps eps))) (fma.f64 (tan.f64 (/.f64 x 4)) (tan.f64 (/.f64 x 4)) (/.f64 (cos.f64 (*.f64 1/2 x)) (+.f64 1 (cos.f64 (*.f64 1/2 x))))) (log1p.f64 (cos.f64 (*.f64 1/2 x))))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps x)))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(log.f64 (+.f64 1 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))))
(log1p.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))))
(*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))
(*.f64 eps (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))
(fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))
(fma.f64 1/2 (*.f64 eps (*.f64 eps (fma.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))))) (*.f64 eps (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))
(fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))) (*.f64 eps (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))))
(fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))) (fma.f64 (pow.f64 eps 3) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) -1/6) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x))))))
(fma.f64 (*.f64 1/2 (*.f64 eps eps)) (fma.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) (fma.f64 (pow.f64 eps 3) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) -1/6) (*.f64 eps (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))))))
(fma.f64 (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))) (*.f64 1/2 (*.f64 eps eps)) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6))))
(+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 1/2 (+.f64 (*.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)) (*.f64 1/48 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)))) (*.f64 -1/48 (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))))) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2)) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/24 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))) (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))))
(fma.f64 (pow.f64 eps 4) (fma.f64 1/2 (fma.f64 -1/48 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) 1/48)) (*.f64 (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))) -1/48)) (fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))) (fma.f64 (pow.f64 eps 3) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) -1/6) (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))))))
(fma.f64 (pow.f64 eps 4) (fma.f64 1/2 (fma.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) -1/48 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) 1/48)) (+.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) 1/96) (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) -1/96))) (fma.f64 (*.f64 1/2 (*.f64 eps eps)) (fma.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) (*.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2))) (fma.f64 (pow.f64 eps 3) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) -1/6) (*.f64 eps (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x)))))))
(fma.f64 (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2))) (*.f64 1/2 (*.f64 eps eps)) (fma.f64 (pow.f64 eps 4) (*.f64 2 (fma.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) 1/96 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) -1/96))) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6)))))
(fma.f64 1/2 (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) (*.f64 1/2 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2)))) (fma.f64 (pow.f64 eps 4) (fma.f64 (pow.f64 (sin.f64 (*.f64 1/2 x)) 2) 1/48 (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 x)) 2) -1/48)) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 x))) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 x (*.f64 -1 eps)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2)))))
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x))))
(fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (fma.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x)) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))
(fma.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (sin.f64 (*.f64 1/2 eps)) x) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x)) (+.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (+.f64 (*.f64 -1/24 (cos.f64 (*.f64 1/2 eps))) (*.f64 -1/8 (cos.f64 (*.f64 1/2 eps)))) (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (pow.f64 x 2))))))
(+.f64 (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x) (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2)) (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) (*.f64 (cos.f64 (*.f64 1/2 eps)) -1/6)) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x)))))
(+.f64 (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) x))) (fma.f64 (sin.f64 (*.f64 1/2 eps)) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 -1/6 (pow.f64 x 3))) (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) (*.f64 x x))) (*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (fma.f64 (cos.f64 (*.f64 1/2 eps)) x (sin.f64 (*.f64 1/2 eps))) (*.f64 (cos.f64 (*.f64 1/2 eps)) (*.f64 (pow.f64 x 3) -1/6)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x)))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 eps (*.f64 -1 x)))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))) (*.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)))))
(*.f64 (sin.f64 (*.f64 1/2 eps)) (fma.f64 (cos.f64 (*.f64 1/2 (+.f64 eps x))) (sin.f64 (*.f64 1/2 x)) (*.f64 (cos.f64 (*.f64 1/2 x)) (sin.f64 (*.f64 1/2 (+.f64 eps x))))))

localize6.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.7b
(-.f64 (cos.f64 x) 1)
Compiler

Compiled 10 to 6 computations (40% saved)

series1.0ms (0%)

Counts
1 → 4
Calls

3 calls:

TimeVariablePointExpression
1.0ms
x
@0
(-.f64 (cos.f64 x) 1)
0.0ms
x
@-inf
(-.f64 (cos.f64 x) 1)
0.0ms
x
@inf
(-.f64 (cos.f64 x) 1)

rewrite41.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
498×pow1_binary64
485×add-sqr-sqrt_binary64
464×add-log-exp_binary64
463×log1p-expm1-u_binary64
463×expm1-log1p-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
056
11046
212836
Stop Event
node limit
Counts
1 → 31
Calls
Call 1
Inputs
(-.f64 (cos.f64 x) 1)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (cos.f64 x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 x) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (cos.f64 x) -1)) (pow.f64 (cbrt.f64 (+.f64 (cos.f64 x) -1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 x) -1)) 2) (cbrt.f64 (+.f64 (cos.f64 x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (cos.f64 x) -1)) (sqrt.f64 (+.f64 (cos.f64 x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (cos.f64 x) 3) -1) (/.f64 1 (+.f64 (pow.f64 (cos.f64 x) 2) (+.f64 (cos.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (cos.f64 x) 2) -1) (/.f64 1 (+.f64 (cos.f64 x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 x)) 1) (-.f64 (sqrt.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (cos.f64 x) 2) (+.f64 (cos.f64 x) 1)) (+.f64 (pow.f64 (cos.f64 x) 3) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 x) 1) (+.f64 (pow.f64 (cos.f64 x) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 x) 3) -1) (+.f64 (pow.f64 (cos.f64 x) 2) (+.f64 (cos.f64 x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 x) 3) -1) (+.f64 (pow.f64 (cos.f64 x) 2) (-.f64 1 (*.f64 (cos.f64 x) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 x) 2) -1) (+.f64 (cos.f64 x) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 x) 2) -1) (-.f64 (cos.f64 x) -1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (cos.f64 x) 3) -1)) (neg.f64 (+.f64 (pow.f64 (cos.f64 x) 2) (+.f64 (cos.f64 x) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (cos.f64 x) 2) -1)) (neg.f64 (+.f64 (cos.f64 x) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (cos.f64 x) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (cos.f64 x) -1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (cos.f64 x) -1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (cos.f64 x) -1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (cos.f64 x) -1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (cos.f64 x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (cos.f64 x) -1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (cos.f64 x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (cos.f64 x) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cbrt.f64 (cos.f64 x)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (sqrt.f64 (cos.f64 x)) -1)))))

simplify103.0ms (0.6%)

Algorithm
egg-herbie
Rules
601×distribute-rgt-out_binary64
520×sqr-pow_binary64
481×associate-+l+_binary64
477×distribute-lft-out_binary64
413×unswap-sqr_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02470
15670
212970
342070
4199570
5437770
6475170
7525770
8624770
9723170
10767070
Stop Event
node limit
Counts
35 → 39
Calls
Call 1
Inputs
(*.f64 -1/2 (pow.f64 x 2))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/2 (pow.f64 x 2)))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 -1/720 (pow.f64 x 6))))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (+.f64 (*.f64 -1/720 (pow.f64 x 6)) (*.f64 1/40320 (pow.f64 x 8)))))
Outputs
(*.f64 -1/2 (pow.f64 x 2))
(*.f64 -1/2 (*.f64 x x))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/2 (pow.f64 x 2)))
(fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/2 (*.f64 x x)))
(fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4)))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x 1/24) -1/2)))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (*.f64 -1/720 (pow.f64 x 6))))
(fma.f64 1/24 (pow.f64 x 4) (fma.f64 -1/2 (*.f64 x x) (*.f64 -1/720 (pow.f64 x 6))))
(fma.f64 -1/2 (*.f64 x x) (fma.f64 -1/720 (pow.f64 x 6) (*.f64 1/24 (pow.f64 x 4))))
(fma.f64 (*.f64 x x) (fma.f64 x (*.f64 x 1/24) -1/2) (*.f64 -1/720 (pow.f64 x 6)))
(fma.f64 -1/2 (*.f64 x x) (fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/720 (pow.f64 x 6))))
(+.f64 (*.f64 1/24 (pow.f64 x 4)) (+.f64 (*.f64 -1/2 (pow.f64 x 2)) (+.f64 (*.f64 -1/720 (pow.f64 x 6)) (*.f64 1/40320 (pow.f64 x 8)))))
(fma.f64 1/24 (pow.f64 x 4) (fma.f64 -1/2 (*.f64 x x) (fma.f64 -1/720 (pow.f64 x 6) (*.f64 1/40320 (pow.f64 x 8)))))
(fma.f64 1/24 (pow.f64 x 4) (fma.f64 1/40320 (pow.f64 x 8) (fma.f64 -1/720 (pow.f64 x 6) (*.f64 -1/2 (*.f64 x x)))))
(fma.f64 (pow.f64 x 4) (fma.f64 (pow.f64 x 4) 1/40320 1/24) (fma.f64 -1/720 (pow.f64 x 6) (*.f64 -1/2 (*.f64 x x))))
(fma.f64 -1/2 (*.f64 x x) (fma.f64 1/24 (pow.f64 x 4) (fma.f64 -1/720 (pow.f64 x 6) (*.f64 1/40320 (pow.f64 x 8)))))

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
0.4b
(pow.f64 (+.f64 (cos.f64 eps) -1) 3)
2.5b
(+.f64 (cos.f64 eps) -1)
Compiler

Compiled 24 to 16 computations (33.3% saved)

series4.0ms (0%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
eps
@-inf
(pow.f64 (+.f64 (cos.f64 eps) -1) 3)
1.0ms
eps
@inf
(pow.f64 (+.f64 (cos.f64 eps) -1) 3)
1.0ms
eps
@0
(pow.f64 (+.f64 (cos.f64 eps) -1) 3)
0.0ms
eps
@0
(+.f64 (cos.f64 eps) -1)
0.0ms
eps
@0
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))

rewrite71.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
713×pow1_binary64
670×add-log-exp_binary64
670×log1p-expm1-u_binary64
670×expm1-log1p-u_binary64
656×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0821
117121
2179121
Stop Event
node limit
Counts
3 → 100
Calls
Call 1
Inputs
(+.f64 (cos.f64 eps) -1)
(pow.f64 (+.f64 (cos.f64 eps) -1) 3)
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (+.f64 (cos.f64 eps) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 (cos.f64 eps) 1)) (/.f64 1 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) (sqrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (/.f64 1 (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) 1/3) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3/2) 1/3) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3/2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1))) (+.f64 -1 (pow.f64 (cos.f64 eps) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (pow.f64 (cos.f64 eps) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (+.f64 1 (-.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (+.f64 (cos.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3))) (neg.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1)) (neg.f64 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (cos.f64 eps) 2)) (-.f64 -1 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (cos.f64 eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 eps) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (cbrt.f64 (cos.f64 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 eps)) -1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 eps) (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) (*.f64 -1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) (*.f64 (cos.f64 eps) (pow.f64 (+.f64 (cos.f64 eps) -1) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (cos.f64 eps)) (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) -1) (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 (+.f64 (cos.f64 eps) -1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2) (*.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (pow.f64 (+.f64 (cos.f64 eps) -1) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) (*.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) (pow.f64 (+.f64 (cos.f64 eps) -1) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3/2) (pow.f64 (+.f64 (cos.f64 eps) -1) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2) 3) (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) 3) (pow.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) 1) (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2)) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (sqrt.f64 (+.f64 (cos.f64 eps) -1))) (sqrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) 3) (pow.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) 3) (pow.f64 (+.f64 (cos.f64 eps) 1) 3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) (+.f64 (cos.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (+.f64 -1 (pow.f64 (cos.f64 eps) 3))) (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (+.f64 (pow.f64 (cos.f64 eps) 2) -1)) (+.f64 (cos.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 3 (log.f64 (+.f64 (cos.f64 eps) -1))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 eps) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (cos.f64 eps))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (+.f64 (cos.f64 eps) -1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 eps) 2) (+.f64 (cos.f64 eps) 1)) (/.f64 1 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (cos.f64 eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 2) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) (sqrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (/.f64 1 (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (/.f64 1 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) 1/3) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (+.f64 (cos.f64 eps) -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3/2) 1/3) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3/2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1))) (+.f64 -1 (pow.f64 (cos.f64 eps) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 eps) 1) (+.f64 (pow.f64 (cos.f64 eps) 2) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3)) (+.f64 1 (-.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (cos.f64 eps) -1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1) (+.f64 (cos.f64 eps) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 -1 (pow.f64 (cos.f64 eps) 3))) (neg.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) (-.f64 1 (*.f64 (cos.f64 eps) -1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (pow.f64 (cos.f64 eps) 2) -1)) (neg.f64 (+.f64 (cos.f64 eps) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 1 (pow.f64 (cos.f64 eps) 2)) (-.f64 -1 (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (cos.f64 eps) -1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (+.f64 (cos.f64 eps) -1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (+.f64 (cos.f64 eps) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 eps) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (cbrt.f64 (cos.f64 eps)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (sqrt.f64 (cos.f64 eps)) -1)))))

simplify65.0ms (0.4%)

Algorithm
egg-herbie
Rules
878×distribute-rgt-out_binary64
822×distribute-lft-out_binary64
722×associate-*l*_binary64
648×fma-def_binary64
553×associate-*r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
047378
1115378
2264378
3871378
44146378
57177378
Stop Event
node limit
Counts
136 → 85
Calls
Call 1
Inputs
(*.f64 -1/2 (pow.f64 eps 2))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6))))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8)))))
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(*.f64 -1/8 (pow.f64 eps 6))
(+.f64 (*.f64 1/32 (pow.f64 eps 8)) (*.f64 -1/8 (pow.f64 eps 6)))
(+.f64 (*.f64 1/32 (pow.f64 eps 8)) (+.f64 (*.f64 -7/1920 (pow.f64 eps 10)) (*.f64 -1/8 (pow.f64 eps 6))))
(+.f64 (*.f64 1/32 (pow.f64 eps 8)) (+.f64 (*.f64 -7/1920 (pow.f64 eps 10)) (+.f64 (*.f64 -1/8 (pow.f64 eps 6)) (*.f64 1/3780 (pow.f64 eps 12)))))
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(*.f64 -1/2 (pow.f64 eps 2))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6))))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8)))))
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
(-.f64 (cos.f64 eps) 1)
Outputs
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/2 (*.f64 eps eps)))
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 1/24 (pow.f64 eps 4)))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6))))
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/720 (pow.f64 eps 6))))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (*.f64 -1/720 (pow.f64 eps 6)))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8)))))
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8)))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8)))))
(fma.f64 (pow.f64 eps 4) (fma.f64 (pow.f64 eps 4) 1/40320 1/24) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 -1/2 (*.f64 eps eps))))
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(*.f64 -1/8 (pow.f64 eps 6))
(*.f64 (pow.f64 eps 6) -1/8)
(+.f64 (*.f64 1/32 (pow.f64 eps 8)) (*.f64 -1/8 (pow.f64 eps 6)))
(fma.f64 1/32 (pow.f64 eps 8) (*.f64 (pow.f64 eps 6) -1/8))
(fma.f64 (pow.f64 eps 6) -1/8 (*.f64 (pow.f64 eps 8) 1/32))
(+.f64 (*.f64 1/32 (pow.f64 eps 8)) (+.f64 (*.f64 -7/1920 (pow.f64 eps 10)) (*.f64 -1/8 (pow.f64 eps 6))))
(fma.f64 1/32 (pow.f64 eps 8) (fma.f64 -7/1920 (pow.f64 eps 10) (*.f64 (pow.f64 eps 6) -1/8)))
(fma.f64 (pow.f64 eps 8) 1/32 (fma.f64 (pow.f64 eps 6) -1/8 (*.f64 -7/1920 (pow.f64 eps 10))))
(fma.f64 (pow.f64 eps 6) -1/8 (fma.f64 (pow.f64 eps 8) 1/32 (*.f64 -7/1920 (pow.f64 eps 10))))
(+.f64 (*.f64 1/32 (pow.f64 eps 8)) (+.f64 (*.f64 -7/1920 (pow.f64 eps 10)) (+.f64 (*.f64 -1/8 (pow.f64 eps 6)) (*.f64 1/3780 (pow.f64 eps 12)))))
(fma.f64 1/32 (pow.f64 eps 8) (fma.f64 -7/1920 (pow.f64 eps 10) (fma.f64 -1/8 (pow.f64 eps 6) (*.f64 1/3780 (pow.f64 eps 12)))))
(fma.f64 (pow.f64 eps 8) 1/32 (fma.f64 -7/1920 (pow.f64 eps 10) (fma.f64 (pow.f64 eps 6) -1/8 (*.f64 1/3780 (pow.f64 eps 12)))))
(fma.f64 (pow.f64 eps 6) -1/8 (fma.f64 (pow.f64 eps 8) 1/32 (fma.f64 -7/1920 (pow.f64 eps 10) (*.f64 1/3780 (pow.f64 eps 12)))))
(fma.f64 (pow.f64 eps 6) -1/8 (fma.f64 (pow.f64 eps 8) 1/32 (fma.f64 1/3780 (pow.f64 eps 12) (*.f64 -7/1920 (pow.f64 eps 10)))))
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(pow.f64 (+.f64 (cos.f64 eps) -1) 3)
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(pow.f64 (+.f64 (cos.f64 eps) -1) 3)
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(pow.f64 (+.f64 (cos.f64 eps) -1) 3)
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(pow.f64 (+.f64 (cos.f64 eps) -1) 3)
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(pow.f64 (+.f64 (cos.f64 eps) -1) 3)
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(pow.f64 (+.f64 (cos.f64 eps) -1) 3)
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(pow.f64 (+.f64 (cos.f64 eps) -1) 3)
(pow.f64 (-.f64 (cos.f64 eps) 1) 3)
(pow.f64 (+.f64 (cos.f64 eps) -1) 3)
(*.f64 -1/2 (pow.f64 eps 2))
(*.f64 -1/2 (*.f64 eps eps))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/2 (*.f64 eps eps)))
(fma.f64 -1/2 (*.f64 eps eps) (*.f64 1/24 (pow.f64 eps 4)))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (*.f64 -1/720 (pow.f64 eps 6))))
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/720 (pow.f64 eps 6))))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/24) -1/2) (*.f64 -1/720 (pow.f64 eps 6)))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 1/40320 (pow.f64 eps 8)))))
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/2 (*.f64 eps eps) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8)))))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 1/40320 (pow.f64 eps 8)))))
(fma.f64 (pow.f64 eps 4) (fma.f64 (pow.f64 eps 4) 1/40320 1/24) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 -1/2 (*.f64 eps eps))))
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)

localize13.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))
0.3b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
1.5b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
2.4b
(cos.f64 (+.f64 x eps))
Compiler

Compiled 39 to 10 computations (74.4% saved)

series21.0ms (0.1%)

Counts
2 → 40
Calls

12 calls:

TimeVariablePointExpression
6.0ms
x
@0
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
3.0ms
x
@inf
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
2.0ms
eps
@0
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
2.0ms
eps
@-inf
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
2.0ms
x
@-inf
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)

rewrite89.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
515×log-prod_binary64
488×fma-def_binary64
331×pow-prod-down_binary64
306×pow2_binary64
244×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01024
124024
2322924
Stop Event
node limit
Counts
2 → 165
Calls
Call 1
Inputs
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (/.f64 (pow.f64 (cos.f64 x) 3) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (/.f64 (pow.f64 (cos.f64 x) 2) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (*.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) 1) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) 2) (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6)) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) (neg.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) (neg.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (neg.f64 (cos.f64 x)) 3)) (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (-.f64 (pow.f64 (neg.f64 (cos.f64 x)) 2) (*.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (neg.f64 (cos.f64 x)) 2)) (-.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (/.f64 1 (exp.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (cos.f64 x))) (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (*.f64 (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cbrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cbrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (neg.f64 (cbrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (*.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (*.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (*.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (neg.f64 (sqrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2 (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (neg.f64 (cos.f64 x))) 2) (cbrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (cos.f64 x))) (sqrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (cos.f64 x) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) 1) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) 1) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) 1) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) 2) (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) 2) (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (*.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) 2) (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6)) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6)) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6)) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2))) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (log.f64 (sqrt.f64 (exp.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (cbrt.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 -2) (cbrt.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) (cbrt.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) (cbrt.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1/6) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) 1))))))

simplify90.0ms (0.5%)

Algorithm
egg-herbie
Rules
730×fma-def_binary64
599×distribute-lft-in_binary64
599×distribute-rgt-in_binary64
457×*-commutative_binary64
428×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01332063
14181976
215151925
367391923
Stop Event
node limit
Counts
205 → 189
Calls
Call 1
Inputs
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 eps) 1))
(+.f64 (*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 eps) 1)) (*.f64 (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (sin.f64 eps))) (*.f64 -2/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (sin.f64 eps)))) x))
(+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))))) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2))) (*.f64 (pow.f64 (*.f64 1 (-.f64 (cos.f64 eps) 1)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/3) (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (pow.f64 (sin.f64 eps) 2))))))) (pow.f64 x 2)) (+.f64 (*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 eps) 1)) (*.f64 (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (sin.f64 eps))) (*.f64 -2/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (sin.f64 eps)))) x)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/3 (*.f64 (+.f64 (*.f64 -1/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/3) (pow.f64 (sin.f64 eps) 3))) (+.f64 (*.f64 -1/6 (sin.f64 eps)) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/9) (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps)))))) (pow.f64 1 1/3))) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/9) (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps)))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/9) (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/3) (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps)))) (*.f64 (pow.f64 (*.f64 1 (-.f64 (cos.f64 eps) 1)) 1/3) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 8)) 1/9) (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps)))) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/3) (+.f64 (*.f64 -1/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/3) (pow.f64 (sin.f64 eps) 3))) (+.f64 (*.f64 -1/6 (sin.f64 eps)) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/9) (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps))))))))))))) (pow.f64 x 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))))) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2))) (*.f64 (pow.f64 (*.f64 1 (-.f64 (cos.f64 eps) 1)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/3) (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (pow.f64 (sin.f64 eps) 2))))))) (pow.f64 x 2)) (+.f64 (*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 eps) 1)) (*.f64 (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (sin.f64 eps))) (*.f64 -2/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (sin.f64 eps)))) x))))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 eps) 1) 1/3)
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/9) (*.f64 (sin.f64 eps) x))) (pow.f64 (-.f64 (cos.f64 eps) 1) 1/3))
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/9) (*.f64 (sin.f64 eps) x))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/3) (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (pow.f64 x 2)))) (pow.f64 (-.f64 (cos.f64 eps) 1) 1/3)))
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/9) (*.f64 (sin.f64 eps) x))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/3) (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (pow.f64 x 2)))) (+.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 1/3) (*.f64 -1/3 (*.f64 (*.f64 (+.f64 (*.f64 -1/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/3) (pow.f64 (sin.f64 eps) 3))) (+.f64 (*.f64 -1/6 (sin.f64 eps)) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/9) (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps)))))) (pow.f64 x 3)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/3))))))
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 1/3)
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 1/3)
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 1/3)
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 1/3)
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 1/3)
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 1/3)
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 1/3)
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 1/3)
Outputs
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 eps) 1))
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(+.f64 (*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 eps) 1)) (*.f64 (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (sin.f64 eps))) (*.f64 -2/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (sin.f64 eps)))) x))
(+.f64 (-.f64 (cos.f64 eps) 1) (*.f64 (*.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 4) 1/18) (pow.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 4) 1/18)) (sin.f64 eps)) -1) x))
(fma.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18)) (*.f64 (sin.f64 eps) -1)) x (+.f64 (cos.f64 eps) -1))
(fma.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18)) (sin.f64 eps)) (neg.f64 x) (+.f64 (cos.f64 eps) -1))
(-.f64 (+.f64 (cos.f64 eps) -1) (*.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18)) (sin.f64 eps)) x))
(+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))))) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2))) (*.f64 (pow.f64 (*.f64 1 (-.f64 (cos.f64 eps) 1)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/3) (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (pow.f64 (sin.f64 eps) 2))))))) (pow.f64 x 2)) (+.f64 (*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 eps) 1)) (*.f64 (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (sin.f64 eps))) (*.f64 -2/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (sin.f64 eps)))) x)))
(fma.f64 (+.f64 (*.f64 1/3 (+.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18) (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18)) (pow.f64 (sin.f64 eps) 2))))) (fma.f64 2/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18) (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18)) (pow.f64 (sin.f64 eps) 2)) (*.f64 (cbrt.f64 (-.f64 (cos.f64 eps) 1)) (fma.f64 2/3 (*.f64 (+.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18) (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18)) (pow.f64 (sin.f64 eps) 2)))) (cbrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)))) (*.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/18)))))))) (*.f64 x x) (+.f64 (-.f64 (cos.f64 eps) 1) (*.f64 (*.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 4) 1/18) (pow.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 4) 1/18)) (sin.f64 eps)) -1) x)))
(fma.f64 (fma.f64 1/3 (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (pow.f64 (sin.f64 eps) 2)))) (fma.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (fma.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18))) (*.f64 (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (pow.f64 (sin.f64 eps) 2)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)))))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18)) (*.f64 (pow.f64 (sin.f64 eps) 2) 2/9)))) (*.f64 x x) (fma.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18)) (*.f64 (sin.f64 eps) -1)) x (+.f64 (cos.f64 eps) -1)))
(-.f64 (fma.f64 (fma.f64 1/3 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (fma.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (fma.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18))) (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)))))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18)) (*.f64 (pow.f64 (sin.f64 eps) 2) 2/9)))) (*.f64 x x) (cos.f64 eps)) (+.f64 1 (*.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18)) (sin.f64 eps)) x)))
(+.f64 (cos.f64 eps) (+.f64 -1 (*.f64 x (-.f64 (*.f64 x (fma.f64 1/3 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (fma.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (fma.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18))) (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)))))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18)) (*.f64 (pow.f64 (sin.f64 eps) 2) 2/9))))) (*.f64 (*.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18)) (sin.f64 eps))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/3 (*.f64 (+.f64 (*.f64 -1/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/3) (pow.f64 (sin.f64 eps) 3))) (+.f64 (*.f64 -1/6 (sin.f64 eps)) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/9) (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps)))))) (pow.f64 1 1/3))) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/9) (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps)))) (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/9) (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/3) (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps)))) (*.f64 (pow.f64 (*.f64 1 (-.f64 (cos.f64 eps) 1)) 1/3) (+.f64 (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 8)) 1/9) (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps)))) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/3) (+.f64 (*.f64 -1/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/3) (pow.f64 (sin.f64 eps) 3))) (+.f64 (*.f64 -1/6 (sin.f64 eps)) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/9) (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps))))))))))))) (pow.f64 x 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))))) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2))) (*.f64 (pow.f64 (*.f64 1 (-.f64 (cos.f64 eps) 1)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/3) (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (pow.f64 (sin.f64 eps) 2))))))) (pow.f64 x 2)) (+.f64 (*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 eps) 1)) (*.f64 (+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (sin.f64 eps))) (*.f64 -2/3 (*.f64 (pow.f64 (*.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/9) (sin.f64 eps)))) x))))
(fma.f64 (fma.f64 -1/3 (*.f64 1 (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2))) (pow.f64 (sin.f64 eps) 3)) (fma.f64 -1/6 (sin.f64 eps) (*.f64 -2/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/18)) (*.f64 (sin.f64 eps) (+.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18) (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18)) (pow.f64 (sin.f64 eps) 2)))))))))) (fma.f64 -2/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/18)) (*.f64 (sin.f64 eps) (+.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18) (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18)) (pow.f64 (sin.f64 eps) 2)))))) (fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/18)) (*.f64 (sin.f64 eps) (fma.f64 2/3 (*.f64 (+.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18) (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18)) (pow.f64 (sin.f64 eps) 2)))) (cbrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)))) (*.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/18))))))) (*.f64 (cbrt.f64 (-.f64 (cos.f64 eps) 1)) (fma.f64 -2/9 (*.f64 (*.f64 (sin.f64 eps) (+.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18) (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18)) (pow.f64 (sin.f64 eps) 2))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 8)) 1/18))) (*.f64 -2/3 (*.f64 (cbrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1))) (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2))) (pow.f64 (sin.f64 eps) 3)) (fma.f64 -1/6 (sin.f64 eps) (*.f64 -2/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/18)) (*.f64 (sin.f64 eps) (+.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18) (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18)) (pow.f64 (sin.f64 eps) 2)))))))))))))))) (pow.f64 x 3) (fma.f64 (+.f64 (*.f64 1/3 (+.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18) (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18)) (pow.f64 (sin.f64 eps) 2))))) (fma.f64 2/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18) (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18)) (pow.f64 (sin.f64 eps) 2)) (*.f64 (cbrt.f64 (-.f64 (cos.f64 eps) 1)) (fma.f64 2/3 (*.f64 (+.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18) (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18)) (pow.f64 (sin.f64 eps) 2)))) (cbrt.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)))) (*.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 4)) 1/18)))))))) (*.f64 x x) (+.f64 (-.f64 (cos.f64 eps) 1) (*.f64 (*.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 4) 1/18) (pow.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 4) 1/18)) (sin.f64 eps)) -1) x))))
(fma.f64 (fma.f64 -1/3 (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))) (pow.f64 (sin.f64 eps) 3)) (fma.f64 (sin.f64 eps) -1/6 (*.f64 (*.f64 (sin.f64 eps) (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (pow.f64 (sin.f64 eps) 2))))) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18)))))) (fma.f64 (*.f64 (sin.f64 eps) (*.f64 (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (pow.f64 (sin.f64 eps) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18)))) -2/9 (fma.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (fma.f64 -2/3 (*.f64 (cbrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))) (pow.f64 (sin.f64 eps) 3)) (fma.f64 (sin.f64 eps) -1/6 (*.f64 (*.f64 (sin.f64 eps) (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (pow.f64 (sin.f64 eps) 2))))) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18))))))) (*.f64 (*.f64 (sin.f64 eps) (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (pow.f64 (sin.f64 eps) 2))))) (*.f64 -2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 8)) 1/18))))) (*.f64 (*.f64 (sin.f64 eps) (fma.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18))) (*.f64 (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (pow.f64 (sin.f64 eps) 2)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))))))) (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18))))))) (pow.f64 x 3) (fma.f64 (fma.f64 1/3 (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (pow.f64 (sin.f64 eps) 2)))) (fma.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (fma.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18))) (*.f64 (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (pow.f64 (sin.f64 eps) 2)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)))))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18)) (*.f64 (pow.f64 (sin.f64 eps) 2) 2/9)))) (*.f64 x x) (fma.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18)) (*.f64 (sin.f64 eps) -1)) x (+.f64 (cos.f64 eps) -1))))
(fma.f64 x (*.f64 x (fma.f64 1/3 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (fma.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (fma.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18))) (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)))))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18)) (*.f64 (pow.f64 (sin.f64 eps) 2) 2/9))))) (fma.f64 (fma.f64 -1/3 (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))) (pow.f64 (sin.f64 eps) 3)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18)))) -1/6))) (fma.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (fma.f64 (cbrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (*.f64 -2/3 (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))) (pow.f64 (sin.f64 eps) 3)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18)))) -1/6)))) (*.f64 (sin.f64 eps) (*.f64 -2/9 (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 8)) 1/18)))))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 -2/9 (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18)))) (*.f64 -1/3 (*.f64 (fma.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18))) (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18)))))))) (pow.f64 x 3) (fma.f64 (*.f64 (*.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18)) (sin.f64 eps)) (neg.f64 x) (+.f64 (cos.f64 eps) -1))))
(fma.f64 (fma.f64 -1/3 (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))) (pow.f64 (sin.f64 eps) 3)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18)))) -1/6))) (fma.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (fma.f64 (cbrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1))) (*.f64 -2/3 (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))) (pow.f64 (sin.f64 eps) 3)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18)))) -1/6)))) (*.f64 (sin.f64 eps) (*.f64 -2/9 (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 8)) 1/18)))))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 -2/9 (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18)))) (*.f64 -1/3 (*.f64 (fma.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18))) (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18)))))))) (pow.f64 x 3) (+.f64 (cos.f64 eps) (+.f64 -1 (*.f64 x (-.f64 (*.f64 x (fma.f64 1/3 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (fma.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) (fma.f64 1/9 (*.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 4)) 1/18))) (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)))))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18)) (*.f64 (pow.f64 (sin.f64 eps) 2) 2/9))))) (*.f64 (*.f64 (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18) (pow.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 4) 1/18)) (sin.f64 eps)))))))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(*.f64 (pow.f64 1 1/3) (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)))
(*.f64 1 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x))
(pow.f64 (-.f64 (cos.f64 eps) 1) 1/3)
(cbrt.f64 (-.f64 (cos.f64 eps) 1))
(cbrt.f64 (+.f64 (cos.f64 eps) -1))
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/9) (*.f64 (sin.f64 eps) x))) (pow.f64 (-.f64 (cos.f64 eps) 1) 1/3))
(fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/18)) (*.f64 (sin.f64 eps) x)) (cbrt.f64 (-.f64 (cos.f64 eps) 1)))
(fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18) (*.f64 (sin.f64 eps) x))) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))
(fma.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18) (*.f64 (sin.f64 eps) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18))) (*.f64 -1/3 x) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/9) (*.f64 (sin.f64 eps) x))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/3) (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (pow.f64 x 2)))) (pow.f64 (-.f64 (cos.f64 eps) 1) 1/3)))
(fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/18)) (*.f64 (sin.f64 eps) x)) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2))) (*.f64 (+.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18) (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18)) (pow.f64 (sin.f64 eps) 2)))) (*.f64 x x))) (cbrt.f64 (-.f64 (cos.f64 eps) 1))))
(fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18) (*.f64 (sin.f64 eps) x))) (fma.f64 1/3 (*.f64 (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (pow.f64 (sin.f64 eps) 2)))) (*.f64 (*.f64 x x) (cbrt.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))))) (cbrt.f64 (+.f64 (cos.f64 eps) -1))))
(fma.f64 1/3 (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 (*.f64 x x) (cbrt.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))))) (fma.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18) (*.f64 (sin.f64 eps) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18))) (*.f64 -1/3 x) (cbrt.f64 (+.f64 (cos.f64 eps) -1))))
(+.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/9) (*.f64 (sin.f64 eps) x))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/3) (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (pow.f64 x 2)))) (+.f64 (pow.f64 (-.f64 (cos.f64 eps) 1) 1/3) (*.f64 -1/3 (*.f64 (*.f64 (+.f64 (*.f64 -1/27 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/3) (pow.f64 (sin.f64 eps) 3))) (+.f64 (*.f64 -1/6 (sin.f64 eps)) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/9) (*.f64 (-.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/9) (pow.f64 (sin.f64 eps) 2)))) (sin.f64 eps)))))) (pow.f64 x 3)) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/3))))))
(fma.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) 1/18)) (*.f64 (sin.f64 eps) x)) (+.f64 (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2))) (*.f64 (+.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18) (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18)) (pow.f64 (sin.f64 eps) 2)))) (*.f64 x x))) (cbrt.f64 (-.f64 (cos.f64 eps) 1))) (*.f64 -1/3 (*.f64 (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2))) (pow.f64 (sin.f64 eps) 3)) (fma.f64 -1/6 (sin.f64 eps) (*.f64 -2/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 5)) 1/18)) (*.f64 (sin.f64 eps) (+.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18) (pow.f64 (/.f64 1 (-.f64 (cos.f64 eps) 1)) 1/18)) (pow.f64 (sin.f64 eps) 2))))))))) (*.f64 (pow.f64 x 3) (cbrt.f64 (/.f64 1 (pow.f64 (-.f64 (cos.f64 eps) 1) 2))))))))
(fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18) (*.f64 (sin.f64 eps) x))) (fma.f64 1/3 (*.f64 (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (pow.f64 (sin.f64 eps) 2)))) (*.f64 (*.f64 x x) (cbrt.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))))) (fma.f64 -1/3 (*.f64 (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))) (pow.f64 (sin.f64 eps) 3)) (fma.f64 (sin.f64 eps) -1/6 (*.f64 (*.f64 (sin.f64 eps) (+.f64 1/2 (fma.f64 (cos.f64 eps) -1/2 (*.f64 (*.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (pow.f64 (sin.f64 eps) 2))))) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18)))))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))) (pow.f64 x 3))) (cbrt.f64 (+.f64 (cos.f64 eps) -1)))))
(+.f64 (fma.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18) (*.f64 (sin.f64 eps) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)) 1/18))) (*.f64 -1/3 x) (cbrt.f64 (+.f64 (cos.f64 eps) -1))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))) (+.f64 (*.f64 -1/3 (*.f64 (fma.f64 -1/27 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))) (pow.f64 (sin.f64 eps) 3)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2)) (*.f64 -2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 5)) 1/18)))) -1/6))) (pow.f64 x 3))) (*.f64 1/3 (*.f64 x (*.f64 x (fma.f64 -1/3 (*.f64 (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18) (*.f64 (pow.f64 (sin.f64 eps) 2) (pow.f64 (/.f64 1 (+.f64 (cos.f64 eps) -1)) 1/18))) (fma.f64 (cos.f64 eps) -1/2 1/2))))))))
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 (-.f64 eps (*.f64 -1 x))) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))
(pow.f64 (-.f64 (cos.f64 (-.f64 x (*.f64 -1 eps))) (cos.f64 x)) 1/3)
(cbrt.f64 (-.f64 (cos.f64 (+.f64 eps x)) (cos.f64 x)))

localize21.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 x) (cos.f64 eps))
0.1b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))
0.2b
(*.f64 (sin.f64 x) (sin.f64 eps))
3.7b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
Compiler

Compiled 47 to 10 computations (78.7% saved)

series9.0ms (0.1%)

Counts
4 → 64
Calls

24 calls:

TimeVariablePointExpression
1.0ms
eps
@inf
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
1.0ms
x
@inf
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
1.0ms
x
@0
(*.f64 (sin.f64 x) (sin.f64 eps))
1.0ms
x
@0
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
0.0ms
x
@0
(*.f64 (cos.f64 x) (cos.f64 eps))

rewrite127.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
837×fma-def_binary64
670×log-prod_binary64
486×fma-neg_binary64
245×expm1-udef_binary64
245×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01157
125933
2389433
Stop Event
node limit
Counts
4 → 380
Calls
Call 1
Inputs
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
(*.f64 (sin.f64 x) (sin.f64 eps))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))
(*.f64 (cos.f64 x) (cos.f64 eps))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (-.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))) (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 x eps))) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 x) (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 x eps) x) 2)) (sin.f64 (/.f64 (+.f64 (+.f64 x eps) x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 x eps))) (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 x) (cos.f64 (+.f64 x eps))) (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 x eps))) (pow.f64 (cos.f64 (+.f64 x eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (+.f64 (cos.f64 x) (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3))) (neg.f64 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 x eps))) (pow.f64 (cos.f64 (+.f64 x eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2))) (neg.f64 (+.f64 (cos.f64 x) (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (fma.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (neg.f64 (cos.f64 x)) 3)) (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (-.f64 (*.f64 (neg.f64 (cos.f64 x)) (neg.f64 (cos.f64 x))) (*.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (*.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))) (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (*.f64 (neg.f64 (cos.f64 x)) (neg.f64 (cos.f64 x)))) (-.f64 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (cos.f64 eps)))) (exp.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps)) (exp.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (cos.f64 eps)))) (*.f64 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps)) (exp.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (+.f64 1 (expm1.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (cos.f64 (+.f64 x eps))) (/.f64 1 (exp.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (/.f64 1 (exp.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (exp.f64 (cos.f64 x))) (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1 (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1 (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1 (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (-.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 1 (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (-.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2) (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (*.f64 (cbrt.f64 (cos.f64 eps)) (cos.f64 x)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (*.f64 (cbrt.f64 (cos.f64 eps)) (cos.f64 x)) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (*.f64 (cbrt.f64 (cos.f64 eps)) (cos.f64 x)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (neg.f64 (cbrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (-.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (-.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (*.f64 (sqrt.f64 (cos.f64 eps)) (cos.f64 x)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (*.f64 (sqrt.f64 (cos.f64 eps)) (cos.f64 x)) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (*.f64 (sqrt.f64 (cos.f64 eps)) (cos.f64 x)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (neg.f64 (sqrt.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (-.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 (-.f64 x eps))) 1/2 (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 (-.f64 x eps))) 1/2 (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 (-.f64 x eps))) 1/2 (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 (-.f64 x eps)) (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 (-.f64 x eps)) (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 (-.f64 x eps)) (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2))) (-.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 x eps))) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 x eps))) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (cos.f64 x) 3)) (/.f64 1 (fma.f64 (cos.f64 x) (+.f64 (cos.f64 x) (cos.f64 (+.f64 x eps))) (pow.f64 (cos.f64 (+.f64 x eps)) 2))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps))) (/.f64 1 (cos.f64 (-.f64 x eps))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps))) (/.f64 1 (cos.f64 (-.f64 x eps))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps))) (/.f64 1 (cos.f64 (-.f64 x eps))) (-.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 x) (cos.f64 (+.f64 x eps)))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 x) (cos.f64 (+.f64 x eps)))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (pow.f64 (cos.f64 x) 2)) (/.f64 1 (+.f64 (cos.f64 x) (cos.f64 (+.f64 x eps)))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (neg.f64 (cos.f64 x))) (cbrt.f64 (neg.f64 (cos.f64 x)))) (cbrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (cos.f64 x))) (sqrt.f64 (neg.f64 (cos.f64 x))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (cos.f64 x) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cos.f64 x)) 1 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 x))) (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (-.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 x))) (+.f64 (neg.f64 (cos.f64 x)) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (neg.f64 (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (*.f64 (neg.f64 (cos.f64 x)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (-.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (cos.f64 eps)) 2)) (cbrt.f64 (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (cos.f64 eps)) 2)) (cbrt.f64 (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (cos.f64 eps)) 2)) (cbrt.f64 (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (sqrt.f64 (cos.f64 eps))) (sqrt.f64 (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (sqrt.f64 (cos.f64 eps))) (sqrt.f64 (cos.f64 eps)) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (sqrt.f64 (cos.f64 eps))) (sqrt.f64 (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 x) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (cos.f64 (-.f64 x eps)) 2) (/.f64 (cos.f64 (+.f64 x eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (-.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (fma.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (*.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 x eps)) (+.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 x eps)))) (cbrt.f64 (exp.f64 (cos.f64 (+.f64 x eps)))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 x eps))))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 x eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 (-.f64 x eps)) (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps))) (/.f64 1 (cos.f64 (-.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 (-.f64 x eps)) (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)) (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (cos.f64 (-.f64 x eps)) (*.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (fma.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 (-.f64 x eps)) (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps))) (cos.f64 (-.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3))) (neg.f64 (fma.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 (-.f64 x eps)) (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps)))) (neg.f64 (cos.f64 (-.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 (-.f64 x eps))) 2) (*.f64 2 (-.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 (-.f64 x eps))) (-.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (-.f64 (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)))) (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) (pow.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) 3)) (+.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (-.f64 (*.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))) (*.f64 (cos.f64 (+.f64 x eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))) (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2) (*.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))) (-.f64 (cos.f64 (+.f64 x eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 x eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (cos.f64 eps)))) (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 (cos.f64 x)) (cos.f64 eps)) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (cos.f64 eps)))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (cos.f64 eps)))) (exp.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (cos.f64 x)) (cos.f64 eps)) (/.f64 1 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (cos.f64 eps)))) (/.f64 1 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))) (exp.f64 (cos.f64 (+.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))) (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)))) (pow.f64 (exp.f64 (cos.f64 x)) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps))) (pow.f64 (exp.f64 (cos.f64 x)) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)))) (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (cos.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 (sin.f64 x)) (sin.f64 eps))) (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (cos.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 (+.f64 x eps))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (+.f64 x eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (+.f64 x eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 eps) (cos.f64 x) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1 (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1 (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (fma.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (*.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 x eps)) 1 (+.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (fma.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (*.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 x eps)) (+.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (*.f64 (cbrt.f64 (cos.f64 eps)) (cos.f64 x)) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (*.f64 (cbrt.f64 (cos.f64 eps)) (cos.f64 x)) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (*.f64 (cbrt.f64 (cos.f64 eps)) (cos.f64 x)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (*.f64 (cbrt.f64 (cos.f64 eps)) (cos.f64 x)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)) (neg.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2)) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (fma.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (*.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (+.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (fma.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 2) (cbrt.f64 (cos.f64 (+.f64 x eps))) (+.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (*.f64 (sqrt.f64 (cos.f64 eps)) (cos.f64 x)) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (*.f64 (sqrt.f64 (cos.f64 eps)) (cos.f64 x)) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (*.f64 (sqrt.f64 (cos.f64 eps)) (cos.f64 x)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 eps)) (*.f64 (sqrt.f64 (cos.f64 eps)) (cos.f64 x)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) (neg.f64 (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (fma.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (*.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (+.f64 x eps))) (sqrt.f64 (cos.f64 (+.f64 x eps))) (+.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sin.f64 eps)) (sin.f64 x) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 (-.f64 x eps))) 1/2 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 (-.f64 x eps))) 1/2 (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 (-.f64 x eps))) 1/2 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 (-.f64 x eps))) 1/2 (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 (-.f64 x eps)) (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 (-.f64 x eps)) (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2))) (fma.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 (-.f64 x eps)) (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 (-.f64 x eps)) (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2))) (*.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 (-.f64 x eps)) (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2))) (+.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps))) (/.f64 1 (cos.f64 (-.f64 x eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps))) (/.f64 1 (cos.f64 (-.f64 x eps))) (fma.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps))) (/.f64 1 (cos.f64 (-.f64 x eps))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps))) (/.f64 1 (cos.f64 (-.f64 x eps))) (*.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 (-.f64 x eps)) (cos.f64 (+.f64 x eps))) (/.f64 1 (cos.f64 (-.f64 x eps))) (+.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))) (cbrt.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))) (cbrt.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)))) (cbrt.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))) (cbrt.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)))) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))) (sqrt.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))) (cos.f64 (+.f64 x eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)))) (sqrt.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)))) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 (sin.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (fma.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1 (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2)) (*.f64 (sin.f64 x) (sin.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (*.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (+.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 2))) (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 (sin.f64 x)) 1) (sin.f64 eps) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 (sin.f64 x)) (pow.f64 (cbrt.f64 (sin.f64 eps)) 2)) (cbrt.f64 (sin.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 (sin.f64 x)) (sqrt.f64 (sin.f64 eps))) (sqrt.f64 (sin.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (cos.f64 eps)) 2)) (cbrt.f64 (cos.f64 eps)) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (cos.f64 eps)) 2)) (cbrt.f64 (cos.f64 eps)) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (cos.f64 eps)) 2)) (cbrt.f64 (cos.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (cos.f64 eps)) 2)) (cbrt.f64 (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (sqrt.f64 (cos.f64 eps))) (sqrt.f64 (cos.f64 eps)) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (sqrt.f64 (cos.f64 eps))) (sqrt.f64 (cos.f64 eps)) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (sqrt.f64 (cos.f64 eps))) (sqrt.f64 (cos.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 x) (sqrt.f64 (cos.f64 eps))) (sqrt.f64 (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (*.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 eps) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 x) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (cos.f64 eps))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (cos.f64 eps))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (cos.f64 eps)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 x)) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 x) (cos.f64 eps)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 (-.f64 x eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 (-.f64 x eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (cos.f64 (+.f64 x eps)) (cos.f64 (-.f64 x eps)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 x)) (cos.f64 eps)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (cos.f64 eps)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 x) (cos.f64 eps))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 1))))))

simplify92.0ms (0.5%)

Algorithm
egg-herbie
Rules
809×fma-def_binary64
519×fma-neg_binary64
450×unswap-sqr_binary64
430×sub-neg_binary64
416×associate-+r+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01131266
13361185
210021106
336561081
471321081
Stop Event
node limit
Counts
444 → 443
Calls
Call 1
Inputs
(-.f64 (cos.f64 eps) 1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(*.f64 (sin.f64 eps) x)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (*.f64 (sin.f64 eps) x))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 x 5) (sin.f64 eps))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (*.f64 (sin.f64 eps) x)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 x 5) (sin.f64 eps))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 x 7) (sin.f64 eps))) (*.f64 (sin.f64 eps) x))))
(*.f64 eps (sin.f64 x))
(+.f64 (*.f64 eps (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 7) (sin.f64 x))) (+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))))
(cos.f64 eps)
(+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps))))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps)))))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps))))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps)))
(cos.f64 x)
(+.f64 (cos.f64 x) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(cos.f64 eps)
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4)))))
(+.f64 (*.f64 -1/720 (*.f64 (cos.f64 eps) (pow.f64 x 6))) (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4))))))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(cos.f64 x)
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 6) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
Outputs
(-.f64 (cos.f64 eps) 1)
(+.f64 (cos.f64 eps) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (neg.f64 (*.f64 x (sin.f64 eps))) 1))
(+.f64 (cos.f64 eps) (fma.f64 (neg.f64 x) (sin.f64 eps) -1))
(-.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (sin.f64 eps)))
(-.f64 (cos.f64 eps) (fma.f64 x (sin.f64 eps) 1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2)))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x))) 1))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2))) (fma.f64 (neg.f64 x) (sin.f64 eps) -1)))
(+.f64 (cos.f64 eps) (+.f64 -1 (*.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)))))
(+.f64 (cos.f64 eps) (fma.f64 x (-.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (sin.f64 eps)) -1))
(-.f64 (+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1 (*.f64 x (sin.f64 eps))) (*.f64 (+.f64 1/2 (*.f64 -1/2 (cos.f64 eps))) (pow.f64 x 2))))) 1)
(+.f64 (cos.f64 eps) (-.f64 (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1 (*.f64 x (sin.f64 eps)) (*.f64 (+.f64 1/2 (*.f64 (cos.f64 eps) -1/2)) (*.f64 x x)))) 1))
(+.f64 -1 (+.f64 (cos.f64 eps) (+.f64 (*.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x))))))
(+.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x)) (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x) -1)))
(+.f64 (fma.f64 (fma.f64 (cos.f64 eps) -1/2 1/2) (*.f64 x x) (cos.f64 eps)) (fma.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x)) -1))
(+.f64 (cos.f64 eps) (fma.f64 x (*.f64 x (fma.f64 (cos.f64 eps) -1/2 1/2)) (fma.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x)) -1)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(*.f64 -1 (*.f64 eps (sin.f64 x)))
(neg.f64 (*.f64 eps (sin.f64 x)))
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 eps (neg.f64 (sin.f64 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (neg.f64 (*.f64 eps (sin.f64 x))))
(-.f64 (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps))) (*.f64 eps (sin.f64 x)))
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps -1/2)) (*.f64 (sin.f64 x) (neg.f64 eps)))
(*.f64 eps (-.f64 (*.f64 -1/2 (*.f64 eps (cos.f64 x))) (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (-.f64 (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps))) (*.f64 eps (sin.f64 x))))
(fma.f64 (cos.f64 x) (*.f64 eps (*.f64 eps -1/2)) (*.f64 (sin.f64 x) (+.f64 (neg.f64 eps) (*.f64 1/6 (pow.f64 eps 3)))))
(-.f64 (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (neg.f64 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (-.f64 (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps))) (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (sin.f64 x) (+.f64 (neg.f64 eps) (*.f64 1/6 (pow.f64 eps 3)))) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 eps (*.f64 eps -1/2)))))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 eps (*.f64 eps -1/2)))) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 eps) (sin.f64 x) (cos.f64 x)))
(*.f64 (sin.f64 eps) x)
(*.f64 x (sin.f64 eps))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (*.f64 (sin.f64 eps) x))
(fma.f64 -1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (*.f64 x (sin.f64 eps)))
(*.f64 (sin.f64 eps) (+.f64 x (*.f64 (pow.f64 x 3) -1/6)))
(*.f64 (sin.f64 eps) (fma.f64 (pow.f64 x 3) -1/6 x))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 x 5) (sin.f64 eps))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (*.f64 (sin.f64 eps) x)))
(fma.f64 1/120 (*.f64 (sin.f64 eps) (pow.f64 x 5)) (fma.f64 -1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (*.f64 x (sin.f64 eps))))
(fma.f64 1/120 (*.f64 (sin.f64 eps) (pow.f64 x 5)) (*.f64 (sin.f64 eps) (+.f64 x (*.f64 (pow.f64 x 3) -1/6))))
(*.f64 (sin.f64 eps) (+.f64 x (fma.f64 1/120 (pow.f64 x 5) (*.f64 (pow.f64 x 3) -1/6))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 x 5) (sin.f64 eps))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 x 7) (sin.f64 eps))) (*.f64 (sin.f64 eps) x))))
(fma.f64 1/120 (*.f64 (sin.f64 eps) (pow.f64 x 5)) (fma.f64 -1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1/5040 (*.f64 (sin.f64 eps) (pow.f64 x 7)) (*.f64 x (sin.f64 eps)))))
(+.f64 (*.f64 (sin.f64 eps) (+.f64 x (*.f64 -1/5040 (pow.f64 x 7)))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 (pow.f64 x 3) -1/6))))
(*.f64 (sin.f64 eps) (+.f64 (fma.f64 -1/5040 (pow.f64 x 7) x) (fma.f64 1/120 (pow.f64 x 5) (*.f64 (pow.f64 x 3) -1/6))))
(*.f64 eps (sin.f64 x))
(+.f64 (*.f64 eps (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))
(fma.f64 eps (sin.f64 x) (*.f64 (*.f64 -1/6 (pow.f64 eps 3)) (sin.f64 x)))
(*.f64 (sin.f64 x) (+.f64 eps (*.f64 (pow.f64 eps 3) -1/6)))
(*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps))
(+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x)))))
(fma.f64 eps (sin.f64 x) (fma.f64 1/120 (*.f64 (sin.f64 x) (pow.f64 eps 5)) (*.f64 (*.f64 -1/6 (pow.f64 eps 3)) (sin.f64 x))))
(fma.f64 eps (sin.f64 x) (*.f64 (sin.f64 x) (+.f64 (*.f64 (pow.f64 eps 3) -1/6) (*.f64 1/120 (pow.f64 eps 5)))))
(*.f64 (sin.f64 x) (+.f64 eps (fma.f64 (pow.f64 eps 3) -1/6 (*.f64 1/120 (pow.f64 eps 5)))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 7) (sin.f64 x))) (+.f64 (*.f64 eps (sin.f64 x)) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (sin.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))))))
(fma.f64 -1/5040 (*.f64 (sin.f64 x) (pow.f64 eps 7)) (fma.f64 eps (sin.f64 x) (fma.f64 1/120 (*.f64 (sin.f64 x) (pow.f64 eps 5)) (*.f64 (*.f64 -1/6 (pow.f64 eps 3)) (sin.f64 x)))))
(+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 (pow.f64 eps 3) -1/6) (*.f64 1/120 (pow.f64 eps 5)))) (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/5040 (pow.f64 eps 7)) eps)))
(*.f64 (sin.f64 x) (+.f64 (fma.f64 (pow.f64 eps 3) -1/6 (*.f64 1/120 (pow.f64 eps 5))) (fma.f64 -1/5040 (pow.f64 eps 7) eps)))
(cos.f64 eps)
(+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps))))
(+.f64 (cos.f64 eps) (neg.f64 (*.f64 x (sin.f64 eps))))
(-.f64 (cos.f64 eps) (*.f64 x (sin.f64 eps)))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps)))))
(+.f64 (cos.f64 eps) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (neg.f64 (*.f64 x (sin.f64 eps)))))
(-.f64 (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (cos.f64 eps)) (*.f64 x (sin.f64 eps)))
(+.f64 (cos.f64 eps) (*.f64 x (-.f64 (*.f64 (cos.f64 eps) (*.f64 -1/2 x)) (sin.f64 eps))))
(-.f64 (cos.f64 eps) (*.f64 x (-.f64 (sin.f64 eps) (*.f64 -1/2 (*.f64 (cos.f64 eps) x)))))
(+.f64 (cos.f64 eps) (*.f64 x (-.f64 (*.f64 (*.f64 (cos.f64 eps) x) -1/2) (sin.f64 eps))))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 x 3) (sin.f64 eps))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 -1 (*.f64 x (sin.f64 eps))))))
(+.f64 (cos.f64 eps) (fma.f64 1/6 (*.f64 (sin.f64 eps) (pow.f64 x 3)) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (neg.f64 (*.f64 x (sin.f64 eps))))))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 x x))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (neg.f64 x)))))
(+.f64 (cos.f64 eps) (fma.f64 (cos.f64 eps) (*.f64 x (*.f64 x -1/2)) (*.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x)))))
(fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (cos.f64 eps) (*.f64 (sin.f64 eps) (fma.f64 1/6 (pow.f64 x 3) (neg.f64 x))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (neg.f64 (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (neg.f64 (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (neg.f64 (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 x) (sin.f64 eps)))
(-.f64 (*.f64 (cos.f64 eps) (cos.f64 x)) (*.f64 (sin.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (neg.f64 (sin.f64 eps))))
(cos.f64 x)
(+.f64 (cos.f64 x) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(+.f64 (cos.f64 x) (neg.f64 (*.f64 eps (sin.f64 x))))
(-.f64 (cos.f64 x) (*.f64 eps (sin.f64 x)))
(fma.f64 eps (neg.f64 (sin.f64 x)) (cos.f64 x))
(+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(+.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (neg.f64 (*.f64 eps (sin.f64 x)))))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (cos.f64 x)) (*.f64 eps (sin.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 eps (sin.f64 x)))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (+.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)) (neg.f64 (*.f64 eps (sin.f64 x))))))
(fma.f64 1/6 (*.f64 (sin.f64 x) (pow.f64 eps 3)) (-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (cos.f64 x)) (*.f64 eps (sin.f64 x))))
(fma.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (neg.f64 eps) (*.f64 1/6 (pow.f64 eps 3)))))
(-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 (sin.f64 x) (fma.f64 (pow.f64 eps 3) -1/6 eps)))
(cos.f64 eps)
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))))
(+.f64 (cos.f64 eps) (*.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x))))
(fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (cos.f64 eps))
(*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (cos.f64 eps))
(*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 x x))) (cos.f64 eps))
(+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4)))))
(+.f64 (cos.f64 eps) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4)))))
(+.f64 (cos.f64 eps) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (*.f64 (cos.f64 eps) (*.f64 (pow.f64 x 4) 1/24))))
(+.f64 (cos.f64 eps) (*.f64 (cos.f64 eps) (+.f64 (*.f64 x (*.f64 x -1/2)) (*.f64 1/24 (pow.f64 x 4)))))
(*.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 x x)) (+.f64 1 (*.f64 1/24 (pow.f64 x 4)))))
(+.f64 (*.f64 -1/720 (*.f64 (cos.f64 eps) (pow.f64 x 6))) (+.f64 (cos.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 eps) (pow.f64 x 2))) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4))))))
(fma.f64 -1/720 (*.f64 (cos.f64 eps) (pow.f64 x 6)) (+.f64 (cos.f64 eps) (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (*.f64 1/24 (*.f64 (cos.f64 eps) (pow.f64 x 4))))))
(+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 eps) (*.f64 x x)) (*.f64 (cos.f64 eps) (*.f64 (pow.f64 x 4) 1/24))) (fma.f64 -1/720 (*.f64 (cos.f64 eps) (pow.f64 x 6)) (cos.f64 eps)))
(+.f64 (cos.f64 eps) (fma.f64 (cos.f64 eps) (*.f64 -1/720 (pow.f64 x 6)) (*.f64 (cos.f64 eps) (+.f64 (*.f64 x (*.f64 x -1/2)) (*.f64 1/24 (pow.f64 x 4))))))
(+.f64 (cos.f64 eps) (*.f64 (cos.f64 eps) (+.f64 (+.f64 (*.f64 1/24 (pow.f64 x 4)) (*.f64 -1/2 (*.f64 x x))) (*.f64 -1/720 (pow.f64 x 6)))))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(cos.f64 x)
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))
(+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps))))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (cos.f64 x))
(*.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x)))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps)))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (cos.f64 x)))
(*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (fma.f64 1/24 (pow.f64 eps 4) 1)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (cos.f64 x))) (+.f64 (cos.f64 x) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 6) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))))))
(fma.f64 1/24 (*.f64 (cos.f64 x) (pow.f64 eps 4)) (+.f64 (cos.f64 x) (fma.f64 -1/720 (*.f64 (cos.f64 x) (pow.f64 eps 6)) (*.f64 -1/2 (*.f64 (cos.f64 x) (*.f64 eps eps))))))
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/720 (pow.f64 eps 6)) (*.f64 -1/2 (*.f64 eps eps)))) (fma.f64 (*.f64 1/24 (pow.f64 eps 4)) (cos.f64 x) (cos.f64 x)))
(fma.f64 (cos.f64 x) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6))) (*.f64 (cos.f64 x) (fma.f64 1/24 (pow.f64 eps 4) 1)))
(*.f64 (cos.f64 x) (+.f64 (fma.f64 -1/2 (*.f64 eps eps) (*.f64 -1/720 (pow.f64 eps 6))) (fma.f64 1/24 (pow.f64 eps 4) 1)))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (cos.f64 eps) (cos.f64 x))

eval715.0ms (4%)

Compiler

Compiled 28988 to 12788 computations (55.9% saved)

prune413.0ms (2.3%)

Pruning

89 alts after pruning (80 fresh and 9 done)

PrunedKeptTotal
New1109361145
Fresh284472
Picked011
Done189
Total1138891227
Error
0.1b
Counts
1227 → 89
Alt Table
Click to see full alt table
StatusErrorProgram
40.8b
(-.f64 (cos.f64 eps) 1)
24.7b
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
50.5b
(*.f64 eps (*.f64 eps -1/2))
24.4b
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (fma.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))
24.3b
(-.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps))) (cos.f64 x))
36.6b
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2)
53.8b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2)
54.7b
(/.f64 (+.f64 (pow.f64 (cos.f64 x) 2) -1) (-.f64 (cos.f64 x) -1))
40.6b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 3)
45.4b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2)
36.9b
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (neg.f64 eps))) 3)
41.0b
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
24.4b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (+.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 1)))
54.7b
(-.f64 (cos.f64 x) 1)
42.2b
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
24.3b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
31.7b
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
46.2b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
46.5b
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
41.0b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
24.3b
(fma.f64 (cos.f64 x) (cos.f64 eps) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))
31.4b
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x)))
35.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2)
41.3b
(-.f64 (-.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 1) (cos.f64 x))
24.4b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 3)) (cos.f64 x))
40.9b
(*.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) 1) -2)
41.2b
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
36.6b
(*.f64 (*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))) -2)
24.3b
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
55.4b
(-.f64 (cos.f64 x) (cos.f64 x))
31.3b
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3))) -2)
24.8b
(pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))) 3)
40.9b
(cbrt.f64 (pow.f64 (log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) 3))
36.5b
(*.f64 (sin.f64 x) (neg.f64 eps))
41.0b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) 1)) 3)
24.7b
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (*.f64 (cbrt.f64 (cos.f64 eps)) (cos.f64 x)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
50.8b
(*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2)
24.3b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (log1p.f64 (expm1.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))
24.5b
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (cos.f64 eps)))) (exp.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))
59.0b
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x 1/24) -1/2)))
41.3b
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
17.6b
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2)
35.6b
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
41.2b
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
54.7b
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 x) -1)))
46.7b
(pow.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))) 2)
27.5b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (expm1.f64 (log1p.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))
41.1b
(log1p.f64 (expm1.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))
39.8b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x)))
55.7b
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)
18.3b
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
24.5b
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3))))
58.9b
(*.f64 -1/2 (*.f64 x x))
41.4b
(cbrt.f64 (-.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1))
55.7b
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2/3) 3)
31.5b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (+.f64 (*.f64 eps (*.f64 eps -1/8)) 1) (sin.f64 x)))) -2)
41.4b
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
37.2b
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2)
24.3b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
50.6b
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
17.3b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (expm1.f64 (log1p.f64 (cos.f64 (*.f64 1/2 x)))) (sin.f64 (*.f64 x 1/2))))) -2)
40.9b
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
43.1b
(fma.f64 (cos.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))) -1)
54.7b
(log.f64 (exp.f64 (+.f64 (cos.f64 x) -1)))
41.0b
(log.f64 (exp.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))
50.6b
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
33.1b
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2)
49.1b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2)
24.9b
(-.f64 (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 3) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
40.1b
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))
54.0b
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 x) -1) 2))
41.0b
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
24.8b
(pow.f64 (cbrt.f64 (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))) 3)
28.4b
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2)
41.2b
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
40.8b
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
35.9b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
50.6b
(fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (neg.f64 (cos.f64 x)))
54.7b
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 x) -1)) 3)
36.0b
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
24.3b
(-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)))) (cos.f64 x))
24.3b
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
40.8b
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
31.7b
(*.f64 (+.f64 (*.f64 (sin.f64 x) (*.f64 eps (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4))))) -2)
40.4b
(-.f64 (cos.f64 eps) (cos.f64 x))
46.7b
(pow.f64 (sqrt.f64 (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))) 2)
54.1b
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
47.5b
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 eps (*.f64 eps -1/2)))
31.6b
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
Compiler

Compiled 1389 to 997 computations (28.2% saved)

regimes1.3s (7.3%)

Counts
148 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 x x))
(*.f64 eps (*.f64 eps -1/2))
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x 1/24) -1/2)))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(fma.f64 (cos.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (-.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 1) (cos.f64 x))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x)))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 x) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 x) -1)))
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) 1)) 3)
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 x) -1) 2))
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 x) -1)) 3)
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1))
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (neg.f64 eps))) 3)
(*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2)
(/.f64 (+.f64 (pow.f64 (cos.f64 x) 2) -1) (-.f64 (cos.f64 x) -1))
(cbrt.f64 (-.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 eps (*.f64 eps -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2)
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2)
(*.f64 (+.f64 (*.f64 (sin.f64 x) (*.f64 eps (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4))))) -2)
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 3)
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x)))
(-.f64 (expm1.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) (cos.f64 x))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3))
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2)
(*.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
(-.f64 (log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))) (cos.f64 x))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2)
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2)
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2)
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(*.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) 1) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2)
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps)))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (+.f64 (*.f64 eps (*.f64 eps -1/8)) 1) (sin.f64 x)))) -2)
(log1p.f64 (expm1.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))
(log.f64 (exp.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))
(cbrt.f64 (pow.f64 (log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) 3))
(sqrt.f64 (pow.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1) 2))
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2/3) 3)
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3))) -2)
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3))) -2)
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) -2)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
(-.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps))) (cos.f64 x))
(fma.f64 (cos.f64 x) (cos.f64 eps) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))
(-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x)))) (cos.f64 x))
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (+.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x))))
(-.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 3))
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (pow.f64 (sqrt.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))) 2))
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 eps 6) 1/36) (*.f64 eps eps)) (sin.f64 x)) (fma.f64 1/6 (pow.f64 eps 3) eps)))
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
(fma.f64 1 (*.f64 (cos.f64 x) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps))) 3)) (cos.f64 x))
(-.f64 (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 3) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
(pow.f64 (cbrt.f64 (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))) 3)
(pow.f64 (sqrt.f64 (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))) 2)
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (+.f64 1 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 1)))
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (cbrt.f64 (*.f64 (pow.f64 (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps) 3) (pow.f64 (sin.f64 x) 3))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (expm1.f64 (log1p.f64 (cos.f64 (*.f64 1/2 x)))) (sin.f64 (*.f64 x 1/2))))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (expm1.f64 (log1p.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)))) (sin.f64 (*.f64 x 1/2))))) -2)
(-.f64 (expm1.f64 (log1p.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))))) (cos.f64 x))
(pow.f64 (cbrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))) 3)
(pow.f64 (sqrt.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))) 2)
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (log1p.f64 (expm1.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (expm1.f64 (log1p.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cbrt.f64 (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3))))
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (pow.f64 (sqrt.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))) 2)))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 x) (cos.f64 eps)))) (exp.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))
(fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
(fma.f64 (sqrt.f64 (cos.f64 x)) (*.f64 (sqrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (sin.f64 eps) (neg.f64 (sin.f64 x))) (cos.f64 x)))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
(fma.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (*.f64 (cbrt.f64 (cos.f64 eps)) (cos.f64 x)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (cos.f64 eps)) (neg.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (*.f64 (neg.f64 (sin.f64 x)) (sin.f64 eps))) (cos.f64 x))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (neg.f64 (-.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (neg.f64 (cos.f64 x)))))
(fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 x) (cos.f64 eps))) (sqrt.f64 (*.f64 (sin.f64 x) (sin.f64 eps)))) (neg.f64 (cos.f64 x)))
(/.f64 (+.f64 (pow.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) 3) (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 3)) (fma.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (-.f64 (pow.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) 2) (*.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps))))))
(/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps))) (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 2)) (fma.f64 (cos.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) 3) (pow.f64 (cos.f64 x) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (-.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (*.f64 (sin.f64 x) (sin.f64 eps)) (cos.f64 x)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 3) (pow.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 2) (fma.f64 (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)) (*.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x))))))
Outputs
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps)))))
(-.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps))) (cos.f64 x))
Calls

4 calls:

730.0ms
x
239.0ms
eps
150.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
110.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
10.8b7x
0.4b3eps
10.7b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
10.7b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 2302 to 1041 computations (54.8% saved)

bsearch146.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
78.0ms
0.00024298140312862157
0.23588624215086673
67.0ms
-1.196625606945672
-1.9806971811055935e-7
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes852.0ms (4.8%)

Counts
104 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 x x))
(*.f64 eps (*.f64 eps -1/2))
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x 1/24) -1/2)))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(fma.f64 (cos.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (-.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 1) (cos.f64 x))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x)))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 x) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 x) -1)))
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) 1)) 3)
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 x) -1) 2))
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 x) -1)) 3)
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1))
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (neg.f64 eps))) 3)
(*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2)
(/.f64 (+.f64 (pow.f64 (cos.f64 x) 2) -1) (-.f64 (cos.f64 x) -1))
(cbrt.f64 (-.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 eps (*.f64 eps -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2)
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2)
(*.f64 (+.f64 (*.f64 (sin.f64 x) (*.f64 eps (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4))))) -2)
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 3)
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x)))
(-.f64 (expm1.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) (cos.f64 x))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3))
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2)
(*.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
(-.f64 (log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))) (cos.f64 x))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2)
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2)
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2)
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(*.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) 1) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2)
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps)))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (+.f64 (*.f64 eps (*.f64 eps -1/8)) 1) (sin.f64 x)))) -2)
(log1p.f64 (expm1.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))
(log.f64 (exp.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))
(cbrt.f64 (pow.f64 (log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) 3))
(sqrt.f64 (pow.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1) 2))
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2/3) 3)
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3))) -2)
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3))) -2)
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) -2)
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
Outputs
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps)))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))
Calls

4 calls:

379.0ms
x
167.0ms
eps
128.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
105.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
10.8b7x
0.4b3eps
10.7b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
10.7b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 1315 to 749 computations (43% saved)

bsearch205.0ms (1.1%)

Algorithm
binary-search
Steps
TimeLeftRight
103.0ms
0.00024298140312862157
0.23588624215086673
100.0ms
-1.196625606945672
-1.9806971811055935e-7
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes1.1s (6.1%)

Counts
103 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 x x))
(*.f64 eps (*.f64 eps -1/2))
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x 1/24) -1/2)))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(fma.f64 (cos.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (-.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 1) (cos.f64 x))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x)))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 x) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 x) -1)))
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) 1)) 3)
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 x) -1) 2))
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 x) -1)) 3)
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1))
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (neg.f64 eps))) 3)
(*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2)
(/.f64 (+.f64 (pow.f64 (cos.f64 x) 2) -1) (-.f64 (cos.f64 x) -1))
(cbrt.f64 (-.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 eps (*.f64 eps -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2)
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2)
(*.f64 (+.f64 (*.f64 (sin.f64 x) (*.f64 eps (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4))))) -2)
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 3)
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x)))
(-.f64 (expm1.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) (cos.f64 x))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3))
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2)
(*.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
(-.f64 (log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))) (cos.f64 x))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2)
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2)
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2)
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(*.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) 1) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2)
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps)))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (+.f64 (*.f64 eps (*.f64 eps -1/8)) 1) (sin.f64 x)))) -2)
(log1p.f64 (expm1.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))
(log.f64 (exp.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))
(cbrt.f64 (pow.f64 (log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) 3))
(sqrt.f64 (pow.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1) 2))
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2/3) 3)
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3))) -2)
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 3) (pow.f64 (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))) 3))) -2)
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 eps 3) (sin.f64 x))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x)))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (+.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x eps) 1/2)) (cos.f64 (*.f64 x 1/2))) (*.f64 (cos.f64 (*.f64 (+.f64 x eps) 1/2)) (sin.f64 (*.f64 x 1/2))))) -2)
Outputs
(-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps)))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
Calls

4 calls:

497.0ms
x
243.0ms
eps
143.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
133.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
10.8b7x
0.5b3eps
10.7b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
10.7b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 1302 to 747 computations (42.6% saved)

bsearch111.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
54.0ms
0.00024298140312862157
0.23588624215086673
57.0ms
-1.196625606945672
-1.9806971811055935e-7
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes684.0ms (3.8%)

Counts
98 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 x x))
(*.f64 eps (*.f64 eps -1/2))
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x 1/24) -1/2)))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(fma.f64 (cos.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (-.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 1) (cos.f64 x))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x)))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 x) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 x) -1)))
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) 1)) 3)
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 x) -1) 2))
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 x) -1)) 3)
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1))
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (neg.f64 eps))) 3)
(*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2)
(/.f64 (+.f64 (pow.f64 (cos.f64 x) 2) -1) (-.f64 (cos.f64 x) -1))
(cbrt.f64 (-.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 eps (*.f64 eps -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2)
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2)
(*.f64 (+.f64 (*.f64 (sin.f64 x) (*.f64 eps (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4))))) -2)
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 3)
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x)))
(-.f64 (expm1.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) (cos.f64 x))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3))
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2)
(*.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
(-.f64 (log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))) (cos.f64 x))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2)
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2)
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2)
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(*.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) 1) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2)
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps)))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (+.f64 (*.f64 eps (*.f64 eps -1/8)) 1) (sin.f64 x)))) -2)
(log1p.f64 (expm1.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))
(log.f64 (exp.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))
(cbrt.f64 (pow.f64 (log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) 3))
(sqrt.f64 (pow.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1) 2))
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2/3) 3)
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
Outputs
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps)))))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))
Calls

4 calls:

340.0ms
x
145.0ms
eps
82.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
80.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
10.9b7x
0.5b3eps
10.8b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
10.8b3(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 1190 to 682 computations (42.7% saved)

bsearch111.0ms (0.6%)

Algorithm
binary-search
Steps
TimeLeftRight
55.0ms
0.00024298140312862157
0.23588624215086673
55.0ms
-1.196625606945672
-1.9806971811055935e-7
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes222.0ms (1.2%)

Counts
96 → 1
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 x x))
(*.f64 eps (*.f64 eps -1/2))
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x 1/24) -1/2)))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(fma.f64 (cos.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (-.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 1) (cos.f64 x))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x)))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
(*.f64 (*.f64 eps (+.f64 (*.f64 eps (*.f64 (cos.f64 x) 1/4)) (*.f64 (sin.f64 x) (+.f64 1/2 (*.f64 -1/12 (*.f64 eps eps)))))) -2)
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 x) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 x) -1)))
(log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1)))
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) 1)) 3)
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 x) -1) 2))
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 x) -1)) 3)
(pow.f64 (cbrt.f64 (+.f64 (cos.f64 eps) -1)) 3)
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 1))
(cbrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 3))
(sqrt.f64 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))
(pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (neg.f64 eps))) 3)
(*.f64 (exp.f64 (*.f64 2 (log.f64 (sin.f64 (*.f64 1/2 eps))))) -2)
(/.f64 (+.f64 (pow.f64 (cos.f64 x) 2) -1) (-.f64 (cos.f64 x) -1))
(cbrt.f64 (-.f64 (+.f64 1 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)) 1))
(fma.f64 (fma.f64 1/6 (pow.f64 eps 3) (neg.f64 eps)) x (*.f64 eps (*.f64 eps -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (cos.f64 x))) (*.f64 -1 (*.f64 eps (sin.f64 x))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fabs.f64 (sin.f64 (*.f64 1/2 eps)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (sqrt.f64 (*.f64 eps eps)) 1/2))) -2)
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 eps -1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (/.f64 (pow.f64 eps 3) (*.f64 eps eps)) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (fma.f64 (*.f64 (+.f64 x eps) (-.f64 x eps)) (/.f64 1 (-.f64 x eps)) (neg.f64 x)) 1/2))) -2)
(*.f64 (+.f64 (*.f64 (sin.f64 x) (*.f64 eps (+.f64 (*.f64 -1/12 (*.f64 eps eps)) 1/2))) (*.f64 (cos.f64 x) (+.f64 (*.f64 eps (*.f64 eps 1/4)) (*.f64 -1/48 (pow.f64 eps 4))))) -2)
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 eps) (cos.f64 x))) 3)
(fma.f64 (cos.f64 x) (cos.f64 eps) (neg.f64 (cos.f64 x)))
(-.f64 (expm1.f64 (log.f64 (+.f64 (cos.f64 eps) 1))) (cos.f64 x))
(log.f64 (exp.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(log1p.f64 (expm1.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))))
(-.f64 (log1p.f64 (expm1.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (expm1.f64 (log1p.f64 (cos.f64 (+.f64 x eps)))) (cos.f64 x))
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(*.f64 (log.f64 (exp.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2))) -2)
(-.f64 (sqrt.f64 (pow.f64 (cos.f64 (+.f64 x eps)) 2)) (cos.f64 x))
(-.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 x eps))) 3) (cos.f64 x))
(sqrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 2))
(pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2)
(pow.f64 (cbrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 3)
(cbrt.f64 (pow.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x)) 3))
(*.f64 (cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) 3)) -2)
(*.f64 (+.f64 (sqrt.f64 (cos.f64 eps)) 1) (-.f64 (sqrt.f64 (cos.f64 eps)) 1))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 2) 3) -2)
(-.f64 (log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps))))) (cos.f64 x))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (expm1.f64 (log1p.f64 eps)) 1/2))) -2)
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2)
(*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))) 2)) -2)
(*.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 2) -2)
(*.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x))))) 3) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (sqrt.f64 eps) 2) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (cbrt.f64 eps) 3) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (pow.f64 (cbrt.f64 (sin.f64 (*.f64 1/2 eps))) 3)) -2)
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (cos.f64 x))) (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)))
(*.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (*.f64 eps 1/2)) (sin.f64 (*.f64 1/2 (+.f64 (+.f64 x eps) x)))))) 1) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (pow.f64 (pow.f64 eps 3) 1/3) 1/2))) -2)
(*.f64 (pow.f64 (cbrt.f64 -2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (/.f64 (sqrt.f64 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps))))) (sqrt.f64 2))) -2)
(+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps)))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (fma.f64 1/2 (*.f64 eps (cos.f64 x)) (*.f64 (+.f64 (*.f64 eps (*.f64 eps -1/8)) 1) (sin.f64 x)))) -2)
(log1p.f64 (expm1.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))
(log.f64 (exp.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1)))
(cbrt.f64 (pow.f64 (log1p.f64 (expm1.f64 (+.f64 (cos.f64 eps) -1))) 3))
(sqrt.f64 (pow.f64 (fma.f64 (cos.f64 x) (cos.f64 eps) -1) 2))
(log.f64 (*.f64 (exp.f64 (neg.f64 (cos.f64 x))) (exp.f64 (cos.f64 (+.f64 x eps)))))
(pow.f64 (pow.f64 (sqrt.f64 (-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))) 2/3) 3)
(log.f64 (/.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 x eps)))) (exp.f64 (cos.f64 x))))
Outputs
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
Calls

4 calls:

56.0ms
x
56.0ms
eps
37.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
36.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
17.0b1x
17.0b1eps
17.0b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
17.0b1(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 1162 to 679 computations (41.6% saved)

regimes108.0ms (0.6%)

Counts
28 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 x x))
(*.f64 eps (*.f64 eps -1/2))
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x 1/24) -1/2)))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(fma.f64 (cos.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (-.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 1) (cos.f64 x))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x)))
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 eps (*.f64 (sin.f64 (*.f64 1/2 x)) (cos.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 (cos.f64 (*.f64 1/2 x)) (*.f64 eps (sin.f64 (*.f64 1/2 x)))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 x)) -2)
Outputs
(-.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x)))
(-.f64 (cos.f64 eps) (cos.f64 x))
Calls

3 calls:

41.0ms
eps
40.0ms
x
17.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
20.4b3x
16.2b3eps
17.4b2(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 261 to 160 computations (38.7% saved)

bsearch142.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
87.0ms
4.102764668462208e-7
0.00024298140312862157
54.0ms
-11055402534.511545
-1.196625606945672
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes165.0ms (0.9%)

Counts
22 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 x x))
(*.f64 eps (*.f64 eps -1/2))
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x 1/24) -1/2)))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(fma.f64 (cos.f64 eps) (+.f64 1 (*.f64 -1/2 (*.f64 x x))) -1)
(-.f64 (+.f64 (cos.f64 eps) (*.f64 -1 (*.f64 x (sin.f64 eps)))) 1)
(-.f64 (-.f64 (+.f64 (cos.f64 (+.f64 x eps)) 1) 1) (cos.f64 x))
(+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (pow.f64 eps 2)))
Outputs
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)
Calls

3 calls:

89.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
37.0ms
x
33.0ms
eps
Results
ErrorSegmentsBranch
21.1b3x
20.9b3eps
22.4b2(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 187 to 112 computations (40.1% saved)

bsearch164.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
75.0ms
1.2791814135071852e-24
1.6409606591438676e-23
90.0ms
-9.537407858767459e-9
-1.9558314649291823e-17
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes115.0ms (0.6%)

Counts
14 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 x x))
(*.f64 eps (*.f64 eps -1/2))
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x 1/24) -1/2)))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 eps) (cos.f64 x))
(-.f64 (cos.f64 x) (cos.f64 x))
(-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) 1)
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Outputs
(-.f64 (cos.f64 eps) (cos.f64 x))
(*.f64 (sin.f64 x) (neg.f64 eps))
(-.f64 (cos.f64 eps) (cos.f64 x))
Calls

3 calls:

70.0ms
x
30.0ms
eps
12.0ms
(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Results
ErrorSegmentsBranch
26.1b3x
21.6b3eps
22.7b2(-.f64 (cos.f64 (+.f64 x eps)) (cos.f64 x))
Compiler

Compiled 108 to 59 computations (45.4% saved)

bsearch120.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
55.0ms
4.102764668462208e-7
0.00024298140312862157
65.0ms
-9.537407858767459e-9
-1.9558314649291823e-17
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes51.0ms (0.3%)

Counts
9 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 x x))
(*.f64 eps (*.f64 eps -1/2))
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(*.f64 x (*.f64 x (fma.f64 x (*.f64 x 1/24) -1/2)))
(*.f64 eps (*.f64 eps (fma.f64 eps (*.f64 eps 1/24) -1/2)))
(*.f64 (/.f64 1 (/.f64 2 (-.f64 1 (cos.f64 (*.f64 1/2 (+.f64 eps eps)))))) -2)
(-.f64 (cos.f64 x) (cos.f64 x))
Outputs
(-.f64 (cos.f64 eps) 1)
(*.f64 (sin.f64 x) (neg.f64 eps))
(-.f64 (cos.f64 eps) 1)
Calls

2 calls:

24.0ms
eps
22.0ms
x
Results
ErrorSegmentsBranch
26.1b3x
22.1b3eps
Compiler

Compiled 70 to 46 computations (34.3% saved)

bsearch124.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
62.0ms
4.102764668462208e-7
0.00024298140312862157
62.0ms
-9.537407858767459e-9
-1.9558314649291823e-17
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes18.0ms (0.1%)

Counts
4 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 x x))
(*.f64 eps (*.f64 eps -1/2))
(-.f64 (cos.f64 x) 1)
(-.f64 (cos.f64 eps) 1)
Outputs
(-.f64 (cos.f64 eps) 1)
(*.f64 eps (*.f64 eps -1/2))
(-.f64 (cos.f64 eps) 1)
Calls

2 calls:

11.0ms
eps
5.0ms
x
Results
ErrorSegmentsBranch
40.8b1x
35.7b3eps
Compiler

Compiled 26 to 18 computations (30.8% saved)

bsearch271.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
162.0ms
1.8343464697285863e-9
4.102764668462208e-7
109.0ms
-11055402534.511545
-1.196625606945672
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes11.0ms (0.1%)

Accuracy

Total -9.0b remaining (-17.9%)

Threshold costs -9.0b (-17.9%)

Counts
3 → 1
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 x x))
(*.f64 eps (*.f64 eps -1/2))
(-.f64 (cos.f64 x) 1)
Outputs
(*.f64 eps (*.f64 eps -1/2))
Calls

2 calls:

6.0ms
x
4.0ms
eps
Results
ErrorSegmentsBranch
50.5b1x
50.5b1eps
Compiler

Compiled 22 to 15 computations (31.8% saved)

simplify59.0ms (0.3%)

Algorithm
egg-herbie
Rules
29×*-commutative_binary64
25×+-commutative_binary64
19×sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
095613
1148613
2185613
3204613
4211613
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 eps -2694561318771261/2251799813685248) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 8964431516369063/36893488147419103232) (+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) (-.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps))) (cos.f64 x))))
(if (<=.f64 eps -2694561318771261/2251799813685248) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 8964431516369063/36893488147419103232) (+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))
(if (<=.f64 eps -2694561318771261/2251799813685248) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 8964431516369063/36893488147419103232) (+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))
(if (<=.f64 eps -2694561318771261/2251799813685248) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 8964431516369063/36893488147419103232) (+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
(if (<=.f64 eps -5796214884013989/524288) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 7749903342979089/18889465931478580854784) (*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x))))
(if (<=.f64 eps -45039135205701/4722366482869645213696) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) (if (<=.f64 eps 6964526065751947/5444517870735015415413993718908291383296) (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)))
(if (<=.f64 eps -45039135205701/4722366482869645213696) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 7749903342979089/18889465931478580854784) (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (cos.f64 eps) (cos.f64 x))))
(if (<=.f64 eps -45039135205701/4722366482869645213696) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 7749903342979089/18889465931478580854784) (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (cos.f64 eps) 1)))
(if (<=.f64 eps -5796214884013989/524288) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 8870355237495331/4835703278458516698824704) (*.f64 eps (*.f64 eps -1/2)) (-.f64 (cos.f64 eps) 1)))
(*.f64 eps (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 x x))
Outputs
(if (<=.f64 eps -2694561318771261/2251799813685248) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 8964431516369063/36893488147419103232) (+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) (-.f64 (fma.f64 (sin.f64 x) (neg.f64 (sin.f64 eps)) (*.f64 (cos.f64 x) (cos.f64 eps))) (cos.f64 x))))
(if (<=.f64 eps -2694561318771261/2251799813685248) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 8964431516369063/36893488147419103232) (+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (fma.f64 (sin.f64 x) (sin.f64 eps) (cos.f64 x)))))
(if (<=.f64 eps -2694561318771261/2251799813685248) (-.f64 (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (*.f64 (sin.f64 x) (sin.f64 eps))) (cos.f64 x)) (if (<=.f64 eps 8964431516369063/36893488147419103232) (+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))
(if (<=.f64 eps -2694561318771261/2251799813685248) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps)))) (if (<=.f64 eps 8964431516369063/36893488147419103232) (+.f64 (*.f64 (sin.f64 x) (-.f64 (*.f64 1/6 (pow.f64 eps 3)) eps)) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps))))) (-.f64 (*.f64 (cos.f64 x) (cos.f64 eps)) (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (sin.f64 eps))))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) -2)
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 eps (-.f64 x x)) 1/2)) (sin.f64 (*.f64 1/2 (+.f64 x (+.f64 eps x))))) -2)
(if (<=.f64 eps -5796214884013989/524288) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 7749903342979089/18889465931478580854784) (*.f64 eps (-.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/2)) (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x))))
(if (<=.f64 eps -45039135205701/4722366482869645213696) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2) (if (<=.f64 eps 6964526065751947/5444517870735015415413993718908291383296) (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 (pow.f64 (sin.f64 (*.f64 1/2 eps)) 2) -2)))
(if (<=.f64 eps -45039135205701/4722366482869645213696) (*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (if (<=.f64 eps 6964526065751947/5444517870735015415413993718908291383296) (*.f64 (sin.f64 x) (neg.f64 eps)) (*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))))
(if (<=.f64 eps -45039135205701/4722366482869645213696) (*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2)) (if (<=.f64 eps 6964526065751947/5444517870735015415413993718908291383296) (*.f64 eps (neg.f64 (sin.f64 x))) (*.f64 -2 (pow.f64 (sin.f64 (*.f64 eps 1/2)) 2))))
(if (<=.f64 eps -45039135205701/4722366482869645213696) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 7749903342979089/18889465931478580854784) (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (cos.f64 eps) (cos.f64 x))))
(if (<=.f64 eps -45039135205701/4722366482869645213696) (-.f64 (cos.f64 eps) (cos.f64 x)) (if (<=.f64 eps 7749903342979089/18889465931478580854784) (*.f64 eps (neg.f64 (sin.f64 x))) (-.f64 (cos.f64 eps) (cos.f64 x))))
(if (<=.f64 eps -45039135205701/4722366482869645213696) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 7749903342979089/18889465931478580854784) (*.f64 (sin.f64 x) (neg.f64 eps)) (-.f64 (cos.f64 eps) 1)))
(if (<=.f64 eps -45039135205701/4722366482869645213696) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 7749903342979089/18889465931478580854784) (*.f64 (sin.f64 x) (neg.f64 eps)) (+.f64 (cos.f64 eps) -1)))
(if (<=.f64 eps -45039135205701/4722366482869645213696) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 7749903342979089/18889465931478580854784) (*.f64 eps (neg.f64 (sin.f64 x))) (+.f64 (cos.f64 eps) -1)))
(if (<=.f64 eps -5796214884013989/524288) (-.f64 (cos.f64 eps) 1) (if (<=.f64 eps 8870355237495331/4835703278458516698824704) (*.f64 eps (*.f64 eps -1/2)) (-.f64 (cos.f64 eps) 1)))
(if (<=.f64 eps -5796214884013989/524288) (+.f64 (cos.f64 eps) -1) (if (<=.f64 eps 8870355237495331/4835703278458516698824704) (*.f64 eps (*.f64 eps -1/2)) (+.f64 (cos.f64 eps) -1)))
(*.f64 eps (*.f64 eps -1/2))
(*.f64 -1/2 (*.f64 x x))
Compiler

Compiled 419 to 248 computations (40.8% saved)

soundness145.0ms (0.8%)

Algorithm
egg-herbie
Rules
813×fma-neg_binary64
459×neg-mul-1_binary64
395×fma-def_binary64
369×associate-+l+_binary64
297×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
068630
1191612
2512583
32203567
47547567
Stop Event
node limit
Compiler

Compiled 459 to 329 computations (28.3% saved)

end282.0ms (1.6%)

Compiler

Compiled 397 to 184 computations (53.7% saved)

Profiling

Loading profile data...