Details

Time bar (total: 14.7s)

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.4s (30.2%)

Results
2.2s3640×body1024valid
1.3s1247×body2048valid
570.0ms1431×body512valid
386.0ms1934×body256valid
8.0msbody4096valid

preprocess33.0ms (0.2%)

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 (sin.f64 (+.f64 x eps)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 eps))
Outputs
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 eps))
(-.f64 (sin.f64 (+.f64 x eps)) (sin.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 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Outputs
(-.f64 (sin.f64 (+.f64 x eps)) (sin.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
35.7b
Counts
2 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
35.7b
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Compiler

Compiled 9 to 6 computations (33.3% saved)

localize14.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.7b
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
3.9b
(sin.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
(sin.f64 (+.f64 x eps))
1.0ms
eps
@inf
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
1.0ms
eps
@0
(sin.f64 (+.f64 x eps))
1.0ms
eps
@0
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
0.0ms
x
@0
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))

rewrite83.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
587×unpow-prod-down_binary64
464×fma-def_binary64
445×log-prod_binary64
279×pow-prod-down_binary64
265×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify65.0ms (0.4%)

Algorithm
egg-herbie
Rules
889×fma-neg_binary64
469×neg-sub0_binary64
426×neg-mul-1_binary64
346×distribute-rgt-neg-in_binary64
302×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
068580
1191575
2466561
31747560
45053547
Stop Event
node limit
Counts
219 → 205
Calls
Call 1
Inputs
(sin.f64 eps)
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (sin.f64 eps))))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 x)
(+.f64 (*.f64 (cos.f64 x) eps) (sin.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(sin.f64 eps)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps))))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(*.f64 (cos.f64 x) eps)
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
Outputs
(sin.f64 eps)
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps)))
(fma.f64 (cos.f64 eps) x (fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (sin.f64 eps)))
(fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (fma.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)) (sin.f64 eps))))
(+.f64 (*.f64 (cos.f64 eps) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)) (fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 eps) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (sin.f64 eps)))
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 (cos.f64 eps) (fma.f64 -1/6 (pow.f64 x 3) x) (sin.f64 eps)))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 (+.f64 eps x))
(sin.f64 x)
(+.f64 (*.f64 (cos.f64 x) eps) (sin.f64 x))
(fma.f64 (cos.f64 x) eps (sin.f64 x))
(fma.f64 eps (cos.f64 x) (sin.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(+.f64 (fma.f64 (cos.f64 x) eps (sin.f64 x)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))
(fma.f64 eps (cos.f64 x) (fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (sin.f64 x)))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(+.f64 (fma.f64 (cos.f64 x) eps (sin.f64 x)) (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))))
(+.f64 (sin.f64 x) (+.f64 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))))
(+.f64 (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))
(+.f64 (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps)))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(sin.f64 (+.f64 eps x))
(sin.f64 eps)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(fma.f64 (-.f64 (cos.f64 eps) 1) x (sin.f64 eps))
(fma.f64 x (+.f64 (cos.f64 eps) -1) (sin.f64 eps))
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (-.f64 (cos.f64 eps) 1) x (sin.f64 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 x (+.f64 (cos.f64 eps) -1) (sin.f64 eps)))
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 x (+.f64 (cos.f64 eps) -1) (sin.f64 eps)))
(-.f64 (fma.f64 (cos.f64 eps) x (fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (sin.f64 eps))) x)
(-.f64 (fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) x)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (-.f64 (cos.f64 eps) 1) x (fma.f64 (fma.f64 -1/6 (cos.f64 eps) 1/6) (pow.f64 x 3) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 x (+.f64 (cos.f64 eps) -1) (fma.f64 (pow.f64 x 3) (fma.f64 (cos.f64 eps) -1/6 1/6) (sin.f64 eps))))
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 x (+.f64 (cos.f64 eps) -1) (fma.f64 (pow.f64 x 3) (fma.f64 (cos.f64 eps) -1/6 1/6) (sin.f64 eps))))
(fma.f64 x (+.f64 (cos.f64 eps) -1) (fma.f64 (*.f64 x x) (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 x (fma.f64 (cos.f64 eps) -1/6 1/6))) (sin.f64 eps)))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 (cos.f64 x) eps (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))
(fma.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))))
(+.f64 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 eps (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))))
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (+.f64 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))))
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4)))))
(fma.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4)))))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))

eval74.0ms (0.5%)

Compiler

Compiled 3642 to 1131 computations (68.9% saved)

prune219.0ms (1.5%)

Pruning

37 alts after pruning (36 fresh and 1 done)

PrunedKeptTotal
New16936205
Fresh000
Picked011
Done000
Total16937206
Error
0.1b
Counts
206 → 37
Alt Table
Click to see full alt table
StatusErrorProgram
61.3b
(-.f64 (sin.f64 x) (sin.f64 x))
19.5b
(fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))
35.7b
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
36.4b
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x))
34.9b
(*.f64 (cos.f64 x) eps)
20.1b
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))
42.4b
(log.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))
20.0b
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x))
48.4b
(sqrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 2))
19.6b
(+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))
20.0b
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))
23.1b
(-.f64 (/.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 3) (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 3)) (+.f64 (pow.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) 2) (-.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2) (*.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps)))))) (sin.f64 x))
37.1b
(*.f64 (pow.f64 (cbrt.f64 2) 3) (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))))
36.9b
(-.f64 (fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (sin.f64 eps)) x)
36.0b
(expm1.f64 (log1p.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))
36.2b
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3)
31.9b
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)))
39.0b
(cbrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 3))
35.8b
(-.f64 (log1p.f64 (expm1.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x))
19.6b
(-.f64 (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x))
36.5b
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
37.0b
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x))
40.3b
(fma.f64 (sqrt.f64 (sin.f64 x)) (*.f64 (sqrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))
30.0b
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
42.3b
(log.f64 (*.f64 (exp.f64 (neg.f64 (sin.f64 x))) (exp.f64 (sin.f64 (+.f64 x eps)))))
20.0b
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) 2) (cbrt.f64 (*.f64 (sin.f64 x) (cos.f64 eps))) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x))
20.2b
(-.f64 (fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) 2) (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x))
35.5b
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps)))
19.6b
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x))
42.6b
(-.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x))
35.5b
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
48.0b
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (sin.f64 x))
35.3b
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
36.2b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2)
35.9b
(-.f64 (sin.f64 eps) (sin.f64 x))
35.4b
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
49.6b
(-.f64 (pow.f64 (sqrt.f64 (sin.f64 (+.f64 x eps))) 2) (sin.f64 x))
Compiler

Compiled 1177 to 754 computations (35.9% saved)

localize18.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x))
0.1b
(*.f64 (cos.f64 x) (sin.f64 eps))
0.9b
(fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))
Compiler

Compiled 38 to 9 computations (76.3% saved)

series12.0ms (0.1%)

Counts
3 → 40
Calls

18 calls:

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

rewrite96.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
817×prod-diff_binary64
519×log-prod_binary64
339×pow-prod-down_binary64
300×fma-def_binary64
289×pow2_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

simplify97.0ms (0.7%)

Algorithm
egg-herbie
Rules
547×fma-def_binary64
412×*-commutative_binary64
391×fma-neg_binary64
375×cancel-sign-sub-inv_binary64
346×unswap-sqr_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
089819
1263798
2722710
32412706
44767706
57949706
Stop Event
node limit
Counts
202 → 205
Calls
Call 1
Inputs
(sin.f64 eps)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps))))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(*.f64 (cos.f64 x) eps)
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(sin.f64 eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 x 4) (sin.f64 eps))) (sin.f64 eps)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 x 4) (sin.f64 eps))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 x 6) (sin.f64 eps))) (sin.f64 eps))))
(*.f64 (cos.f64 x) eps)
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 7) (cos.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))))
(sin.f64 eps)
(+.f64 (*.f64 -1 x) (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 -1 x) (sin.f64 eps)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (sin.f64 eps))))
(*.f64 -1 (sin.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1 (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))))
Outputs
(sin.f64 eps)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (-.f64 (sin.f64 eps) x))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps)))
(fma.f64 (fma.f64 -1/2 (*.f64 x x) 1) (sin.f64 eps) (-.f64 (*.f64 (cos.f64 eps) x) x))
(fma.f64 (+.f64 (cos.f64 eps) -1) x (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)))
(fma.f64 (cos.f64 eps) x (-.f64 (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)) x))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 -1/6 (cos.f64 eps) 1/6) (pow.f64 x 3) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps))))
(+.f64 (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)) (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (-.f64 (*.f64 (cos.f64 eps) x) x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 (cos.f64 x) eps (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/2))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))))
(+.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) eps)))
(fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/2)) (*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))))
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))) (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) eps))))
(fma.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4)))))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(sin.f64 eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (sin.f64 eps))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (sin.f64 eps))
(*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 x 4) (sin.f64 eps))) (sin.f64 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 1/24 (*.f64 (sin.f64 eps) (pow.f64 x 4)) (sin.f64 eps)))
(+.f64 (sin.f64 eps) (*.f64 (sin.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 x x)) (*.f64 1/24 (pow.f64 x 4)))))
(*.f64 (sin.f64 eps) (+.f64 (*.f64 x (*.f64 x -1/2)) (fma.f64 1/24 (pow.f64 x 4) 1)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 x 4) (sin.f64 eps))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 x 6) (sin.f64 eps))) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 1/24 (*.f64 (sin.f64 eps) (pow.f64 x 4)) (fma.f64 -1/720 (*.f64 (sin.f64 eps) (pow.f64 x 6)) (sin.f64 eps))))
(+.f64 (fma.f64 -1/720 (*.f64 (sin.f64 eps) (pow.f64 x 6)) (sin.f64 eps)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 x x)) (*.f64 1/24 (pow.f64 x 4)))))
(fma.f64 (sin.f64 eps) (fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/720 (pow.f64 x 6))) (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)))
(*.f64 (sin.f64 eps) (+.f64 (fma.f64 -1/2 (*.f64 x x) 1) (fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/720 (pow.f64 x 6)))))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))
(fma.f64 (cos.f64 x) eps (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))))
(*.f64 (cos.f64 x) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) eps))
(*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))))
(fma.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 eps 5)) (fma.f64 (cos.f64 x) eps (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)))))
(fma.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 eps 5)) (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) eps)))
(*.f64 (cos.f64 x) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (fma.f64 1/120 (pow.f64 eps 5) eps)))
(*.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (pow.f64 eps 5)) (fma.f64 -1/6 (pow.f64 eps 3) eps)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 7) (cos.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))))
(fma.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 eps 5)) (fma.f64 (cos.f64 x) eps (fma.f64 -1/5040 (*.f64 (cos.f64 x) (pow.f64 eps 7)) (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))))))
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 -1/5040 (pow.f64 eps 7)))) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (pow.f64 eps 5)) eps)))
(*.f64 (cos.f64 x) (+.f64 (fma.f64 1/120 (pow.f64 eps 5) eps) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 -1/5040 (pow.f64 eps 7)))))
(*.f64 (cos.f64 x) (+.f64 (fma.f64 1/120 (pow.f64 eps 5) eps) (fma.f64 -1/5040 (pow.f64 eps 7) (*.f64 -1/6 (pow.f64 eps 3)))))
(sin.f64 eps)
(+.f64 (*.f64 -1 x) (sin.f64 eps))
(fma.f64 -1 x (sin.f64 eps))
(-.f64 (sin.f64 eps) x)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 -1 x) (sin.f64 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 -1 x (sin.f64 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (-.f64 (sin.f64 eps) x))
(fma.f64 (fma.f64 -1/2 (*.f64 x x) 1) (sin.f64 eps) (neg.f64 x))
(-.f64 (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)) x)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/6 (pow.f64 x 3)) (+.f64 (*.f64 -1 x) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 1/6 (pow.f64 x 3) (fma.f64 -1 x (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 1/6 (pow.f64 x 3) (-.f64 (sin.f64 eps) x)))
(fma.f64 1/6 (pow.f64 x 3) (fma.f64 (fma.f64 -1/2 (*.f64 x x) 1) (sin.f64 eps) (neg.f64 x)))
(fma.f64 1/6 (pow.f64 x 3) (-.f64 (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)) x))
(fma.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1) (-.f64 (*.f64 1/6 (pow.f64 x 3)) x))
(*.f64 -1 (sin.f64 x))
(neg.f64 (sin.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1 (sin.f64 x)))
(fma.f64 (cos.f64 x) eps (neg.f64 (sin.f64 x)))
(fma.f64 eps (cos.f64 x) (neg.f64 (sin.f64 x)))
(-.f64 (*.f64 eps (cos.f64 x)) (sin.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))))
(fma.f64 (cos.f64 x) eps (fma.f64 -1 (sin.f64 x) (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)))))
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) eps)) (neg.f64 (sin.f64 x)))
(-.f64 (*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps)) (sin.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 -1 (sin.f64 x)) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))))
(fma.f64 (cos.f64 x) eps (fma.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 eps 5)) (fma.f64 -1 (sin.f64 x) (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))))))
(+.f64 (fma.f64 (*.f64 -1/6 (pow.f64 eps 3)) (cos.f64 x) (neg.f64 (sin.f64 x))) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (pow.f64 eps 5)) eps)))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (fma.f64 1/120 (pow.f64 eps 5) eps))) (sin.f64 x))
(-.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (pow.f64 eps 5)) (fma.f64 -1/6 (pow.f64 eps 3) eps))) (sin.f64 x))

localize6.0ms (0%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 x) eps)
Compiler

Compiled 10 to 4 computations (60% saved)

series5.0ms (0%)

Counts
1 → 8
Calls

6 calls:

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

rewrite41.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
462×pow1_binary64
440×add-sqr-sqrt_binary64
435×*-un-lft-identity_binary64
422×add-log-exp_binary64
422×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify138.0ms (0.9%)

Algorithm
egg-herbie
Rules
515×distribute-lft-out_binary64
503×sqr-pow_binary64
492×distribute-rgt-out_binary64
432×*-commutative_binary64
398×associate-+l+_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02494
15892
214588
344782
4197881
5399381
6424981
7456381
8508681
9584181
10658181
11753681
12798581
Stop Event
node limit
Counts
19 → 19
Calls
Call 1
Inputs
eps
(+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 eps (+.f64 (*.f64 1/24 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(+.f64 (*.f64 -1/720 (*.f64 eps (pow.f64 x 6))) (+.f64 eps (+.f64 (*.f64 1/24 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))))
(*.f64 eps (cos.f64 x))
(*.f64 eps (cos.f64 x))
(*.f64 eps (cos.f64 x))
(*.f64 eps (cos.f64 x))
Outputs
eps
(+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 eps (*.f64 -1/2 (*.f64 eps (*.f64 x x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 x x)) eps)
(*.f64 eps (fma.f64 -1/2 (*.f64 x x) 1))
(+.f64 eps (+.f64 (*.f64 1/24 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(+.f64 eps (fma.f64 1/24 (*.f64 eps (pow.f64 x 4)) (*.f64 -1/2 (*.f64 eps (*.f64 x x)))))
(+.f64 eps (fma.f64 -1/2 (*.f64 eps (*.f64 x x)) (*.f64 1/24 (*.f64 eps (pow.f64 x 4)))))
(fma.f64 (pow.f64 x 4) (*.f64 eps 1/24) (fma.f64 -1/2 (*.f64 eps (*.f64 x x)) eps))
(fma.f64 eps (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))) eps)
(+.f64 (*.f64 -1/720 (*.f64 eps (pow.f64 x 6))) (+.f64 eps (+.f64 (*.f64 1/24 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))))
(fma.f64 -1/720 (*.f64 eps (pow.f64 x 6)) (+.f64 eps (fma.f64 1/24 (*.f64 eps (pow.f64 x 4)) (*.f64 -1/2 (*.f64 eps (*.f64 x x))))))
(+.f64 (fma.f64 -1/2 (*.f64 eps (*.f64 x x)) (*.f64 1/24 (*.f64 eps (pow.f64 x 4)))) (fma.f64 -1/720 (*.f64 eps (pow.f64 x 6)) eps))
(fma.f64 -1/720 (*.f64 eps (pow.f64 x 6)) (fma.f64 (pow.f64 x 4) (*.f64 eps 1/24) (fma.f64 -1/2 (*.f64 eps (*.f64 x x)) eps)))
(fma.f64 eps (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))) (fma.f64 eps (*.f64 -1/720 (pow.f64 x 6)) eps))
(*.f64 eps (+.f64 (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))) (fma.f64 -1/720 (pow.f64 x 6) 1)))
(*.f64 eps (+.f64 (fma.f64 1/24 (pow.f64 x 4) 1) (fma.f64 -1/2 (*.f64 x x) (*.f64 -1/720 (pow.f64 x 6)))))
(*.f64 eps (cos.f64 x))
(*.f64 eps (cos.f64 x))
(*.f64 eps (cos.f64 x))
(*.f64 eps (cos.f64 x))

localize19.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
0.0b
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
0.1b
(*.f64 (cos.f64 x) eps)
3.6b
(*.f64 (pow.f64 eps 2) (sin.f64 x))
Compiler

Compiled 44 to 23 computations (47.7% saved)

series13.0ms (0.1%)

Counts
3 → 19
Calls

18 calls:

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

rewrite158.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
599×log-prod_binary64
398×pow-prod-down_binary64
376×fma-def_binary64
317×pow2_binary64
220×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify155.0ms (1.1%)

Algorithm
egg-herbie
Rules
1240×distribute-lft-out_binary64
614×unswap-sqr_binary64
403×*-commutative_binary64
398×distribute-rgt-out_binary64
369×fma-def_binary64
Iterations

Useful iterations: 7 (0.0ms)

IterNodesCost
055397
1154395
2455363
31726331
43261331
54306331
64480331
74655330
84897330
95116330
107320330
117625330
127983330
Stop Event
node limit
Counts
133 → 143
Calls
Call 1
Inputs
(*.f64 (pow.f64 eps 2) x)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))) (*.f64 (pow.f64 eps 2) x))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (*.f64 (pow.f64 eps 2) x)))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 2) (pow.f64 x 7))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (*.f64 (pow.f64 eps 2) x))))
eps
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(*.f64 (cos.f64 x) eps)
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 -1/240 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 -1/240 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (+.f64 (*.f64 1/10080 (*.f64 (pow.f64 eps 2) (pow.f64 x 7))) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))))))
Outputs
(*.f64 (pow.f64 eps 2) x)
(*.f64 (*.f64 eps eps) x)
(*.f64 eps (*.f64 eps x))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))) (*.f64 (pow.f64 eps 2) x))
(fma.f64 -1/6 (*.f64 (*.f64 eps eps) (pow.f64 x 3)) (*.f64 (*.f64 eps eps) x))
(fma.f64 -1/6 (*.f64 eps (*.f64 eps (pow.f64 x 3))) (*.f64 (*.f64 eps eps) x))
(*.f64 (*.f64 eps eps) (+.f64 x (*.f64 -1/6 (pow.f64 x 3))))
(*.f64 eps (*.f64 eps (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (*.f64 (pow.f64 eps 2) x)))
(fma.f64 -1/6 (*.f64 (*.f64 eps eps) (pow.f64 x 3)) (fma.f64 1/120 (*.f64 (*.f64 eps eps) (pow.f64 x 5)) (*.f64 (*.f64 eps eps) x)))
(fma.f64 -1/6 (*.f64 eps (*.f64 eps (pow.f64 x 3))) (fma.f64 (*.f64 eps eps) x (*.f64 (pow.f64 x 5) (*.f64 (*.f64 eps eps) 1/120))))
(fma.f64 (*.f64 eps eps) (*.f64 1/120 (pow.f64 x 5)) (*.f64 (*.f64 eps eps) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))))
(*.f64 (*.f64 eps eps) (+.f64 x (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/6 (pow.f64 x 3)))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) (+.f64 x (*.f64 1/120 (pow.f64 x 5)))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 2) (pow.f64 x 7))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (*.f64 (pow.f64 eps 2) x))))
(fma.f64 -1/5040 (*.f64 (*.f64 eps eps) (pow.f64 x 7)) (fma.f64 -1/6 (*.f64 (*.f64 eps eps) (pow.f64 x 3)) (fma.f64 1/120 (*.f64 (*.f64 eps eps) (pow.f64 x 5)) (*.f64 (*.f64 eps eps) x))))
(fma.f64 -1/5040 (*.f64 (*.f64 eps eps) (pow.f64 x 7)) (fma.f64 -1/6 (*.f64 eps (*.f64 eps (pow.f64 x 3))) (fma.f64 (*.f64 eps eps) x (*.f64 (pow.f64 x 5) (*.f64 (*.f64 eps eps) 1/120)))))
(+.f64 (*.f64 (*.f64 eps eps) (+.f64 x (*.f64 1/120 (pow.f64 x 5)))) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) (*.f64 -1/5040 (pow.f64 x 7)))))
(*.f64 (*.f64 eps eps) (+.f64 (+.f64 x (*.f64 1/120 (pow.f64 x 5))) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) (*.f64 -1/5040 (pow.f64 x 7)))))
(*.f64 (*.f64 eps eps) (+.f64 x (+.f64 (*.f64 1/120 (pow.f64 x 5)) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) (*.f64 -1/5040 (pow.f64 x 7))))))
eps
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) eps)
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) eps)
(fma.f64 (*.f64 (*.f64 eps eps) x) -1/2 eps)
(fma.f64 (*.f64 eps eps) (*.f64 x -1/2) eps)
(fma.f64 (*.f64 eps (*.f64 eps x)) -1/2 eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) eps) (*.f64 -1/2 (*.f64 eps (*.f64 x x))))
(fma.f64 (*.f64 (*.f64 eps eps) x) -1/2 (fma.f64 -1/2 (*.f64 x (*.f64 x eps)) eps))
(fma.f64 eps (*.f64 x (*.f64 x -1/2)) (fma.f64 (*.f64 eps eps) (*.f64 x -1/2) eps))
(+.f64 eps (*.f64 (*.f64 eps (*.f64 x -1/2)) (+.f64 x eps)))
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) eps) (fma.f64 -1/2 (*.f64 eps (*.f64 x x)) (*.f64 (*.f64 (*.f64 eps eps) (pow.f64 x 3)) 1/12)))
(+.f64 (fma.f64 -1/2 (*.f64 x (*.f64 x eps)) eps) (fma.f64 (*.f64 (*.f64 eps eps) 1/12) (pow.f64 x 3) (*.f64 (*.f64 eps eps) (*.f64 x -1/2))))
(+.f64 (fma.f64 eps (*.f64 x (*.f64 x -1/2)) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 x -1/2) (*.f64 (pow.f64 x 3) 1/12))))
(+.f64 (*.f64 (*.f64 eps (*.f64 x -1/2)) (+.f64 x eps)) (fma.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 3) 1/12) eps))
(+.f64 (*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x)))) (fma.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 3) 1/12) eps))
(+.f64 eps (*.f64 eps (+.f64 (*.f64 x (*.f64 -1/2 (+.f64 eps x))) (*.f64 (pow.f64 x 3) (*.f64 eps 1/12)))))
(*.f64 eps (+.f64 1 (+.f64 (*.f64 1/12 (*.f64 eps (pow.f64 x 3))) (*.f64 x (*.f64 -1/2 (+.f64 eps x))))))
(*.f64 eps (+.f64 (*.f64 (pow.f64 x 3) (*.f64 eps 1/12)) (+.f64 1 (*.f64 x (*.f64 -1/2 (+.f64 eps x))))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps -1/2))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps -1/2))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps -1/2))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps -1/2))))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2))
(*.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x)))
(*.f64 eps (*.f64 eps (*.f64 -1/2 (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2))
(*.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x)))
(*.f64 eps (*.f64 eps (*.f64 -1/2 (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))
(*.f64 (*.f64 (*.f64 eps eps) x) -1/2)
(*.f64 (*.f64 eps eps) (*.f64 x -1/2))
(*.f64 eps (*.f64 eps (*.f64 x -1/2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))))
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) (*.f64 (*.f64 (*.f64 eps eps) (pow.f64 x 3)) 1/12))
(fma.f64 (*.f64 (*.f64 eps eps) 1/12) (pow.f64 x 3) (*.f64 (*.f64 eps eps) (*.f64 x -1/2)))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 x -1/2) (*.f64 (pow.f64 x 3) 1/12)))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 (pow.f64 x 3) 1/12) (*.f64 x -1/2)))
(*.f64 (*.f64 eps (*.f64 eps x)) (+.f64 -1/2 (*.f64 (*.f64 x x) 1/12)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 -1/240 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3)))))
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) (fma.f64 -1/240 (*.f64 (*.f64 eps eps) (pow.f64 x 5)) (*.f64 (*.f64 (*.f64 eps eps) (pow.f64 x 3)) 1/12)))
(fma.f64 (*.f64 (*.f64 eps eps) x) -1/2 (fma.f64 (*.f64 eps (*.f64 eps (pow.f64 x 3))) 1/12 (*.f64 (pow.f64 x 5) (*.f64 (*.f64 eps eps) -1/240))))
(fma.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 5) -1/240) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 x -1/2) (*.f64 (pow.f64 x 3) 1/12))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 x -1/2) (+.f64 (*.f64 (pow.f64 x 5) -1/240) (*.f64 (pow.f64 x 3) 1/12))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 (pow.f64 x 5) -1/240) (+.f64 (*.f64 (pow.f64 x 3) 1/12) (*.f64 x -1/2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 -1/240 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (+.f64 (*.f64 1/10080 (*.f64 (pow.f64 eps 2) (pow.f64 x 7))) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))))))
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) (fma.f64 -1/240 (*.f64 (*.f64 eps eps) (pow.f64 x 5)) (fma.f64 1/10080 (*.f64 (*.f64 eps eps) (pow.f64 x 7)) (*.f64 (*.f64 (*.f64 eps eps) (pow.f64 x 3)) 1/12))))
(fma.f64 (*.f64 (*.f64 eps eps) x) -1/2 (fma.f64 (*.f64 eps (*.f64 eps (pow.f64 x 5))) -1/240 (fma.f64 (*.f64 eps (*.f64 eps (pow.f64 x 3))) 1/12 (*.f64 (*.f64 eps eps) (*.f64 (pow.f64 x 7) 1/10080)))))
(+.f64 (*.f64 (*.f64 eps eps) (+.f64 (*.f64 x -1/2) (*.f64 (pow.f64 x 3) 1/12))) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (pow.f64 x 5) -1/240) (*.f64 (pow.f64 x 7) 1/10080))))
(*.f64 (*.f64 eps eps) (+.f64 (+.f64 (*.f64 (pow.f64 x 5) -1/240) (*.f64 (pow.f64 x 7) 1/10080)) (+.f64 (*.f64 (pow.f64 x 3) 1/12) (*.f64 x -1/2))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 (pow.f64 x 7) 1/10080) (+.f64 (*.f64 (pow.f64 x 5) -1/240) (+.f64 (*.f64 (pow.f64 x 3) 1/12) (*.f64 x -1/2)))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 (pow.f64 x 5) -1/240) (+.f64 (*.f64 (pow.f64 x 3) 1/12) (+.f64 (*.f64 (pow.f64 x 7) 1/10080) (*.f64 x -1/2)))))

localize17.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(cbrt.f64 (sin.f64 (+.f64 x eps)))
0.7b
(pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3)
3.9b
(sin.f64 (+.f64 x eps))
15.8b
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x))
Compiler

Compiled 36 to 12 computations (66.7% saved)

series54.0ms (0.4%)

Counts
3 → 72
Calls

18 calls:

TimeVariablePointExpression
26.0ms
eps
@-inf
(cbrt.f64 (sin.f64 (+.f64 x eps)))
8.0ms
eps
@0
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x))
4.0ms
x
@0
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x))
3.0ms
x
@-inf
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x))
2.0ms
x
@inf
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 (+.f64 x eps))) 3) (sin.f64 x))

rewrite88.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
480×log-prod_binary64
422×fma-def_binary64
329×pow-prod-down_binary64
284×pow2_binary64
218×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify155.0ms (1.1%)

Algorithm
egg-herbie
Rules
880×unsub-neg_binary64
701×associate-+l+_binary64
584×associate-+r+_binary64
372×fma-neg_binary64
332×+-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02455186
18584919
231614562
369814546
Stop Event
node limit
Counts
272 → 258
Calls
Call 1
Inputs
(*.f64 (pow.f64 1 1/3) (sin.f64 eps))
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 2/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9)))) 1) x) (*.f64 (pow.f64 1 1/3) (sin.f64 eps)))
(+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 eps)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))))) (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9))))) (pow.f64 x 2)) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 2/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9)))) 1) x) (*.f64 (pow.f64 1 1/3) (sin.f64 eps))))
(+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/9) (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2))))))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/6 (cos.f64 eps)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/9) (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))))))))) (pow.f64 (*.f64 1 (sin.f64 eps)) 1/3)) (+.f64 1/6 (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 eps) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/9))) (+.f64 (*.f64 2/9 (*.f64 (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/9))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/6 (cos.f64 eps)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/9) (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2))))))))))))))) (pow.f64 x 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 eps)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))))) (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9))))) (pow.f64 x 2)) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 2/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9)))) 1) x) (*.f64 (pow.f64 1 1/3) (sin.f64 eps)))))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x)))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x)))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x)))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x)))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 x)) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 x)) (*.f64 eps (+.f64 (*.f64 2/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9)))))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 x)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (sin.f64 x)) 1/9))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))) (+.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 x)) (*.f64 eps (+.f64 (*.f64 2/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 x)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (sin.f64 x)) 1/9))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))) (+.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 x)) (+.f64 (*.f64 eps (+.f64 (*.f64 2/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2/9 (*.f64 (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/9))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/9))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/6 (cos.f64 x)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/9) (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))))) (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/6 (cos.f64 x)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/9) (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))))) (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/9) (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))))) (pow.f64 (*.f64 1 (sin.f64 x)) 1/3))))))))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps)))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps)))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps)))) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps)))) (sin.f64 x))
(*.f64 (pow.f64 1 1/3) (sin.f64 eps))
(+.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9)))) x) (*.f64 (pow.f64 1 1/3) (sin.f64 eps)))
(+.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9)))) x) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 eps)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))))) (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9))))) (pow.f64 x 2)) (*.f64 (pow.f64 1 1/3) (sin.f64 eps))))
(+.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9)))) x) (+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 eps)) 1/3) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/9) (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2))))))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/6 (cos.f64 eps)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/9) (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2))))))))))))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 eps) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/9))) (+.f64 (*.f64 2/9 (*.f64 (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/9))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/6 (cos.f64 eps)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/9) (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))))))))))) (pow.f64 x 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 eps)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))))) (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9))))) (pow.f64 x 2)) (*.f64 (pow.f64 1 1/3) (sin.f64 eps)))))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x))))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x))))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x))))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x))))
(*.f64 (pow.f64 1 1/3) (sin.f64 x))
(+.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 x)) (*.f64 eps (+.f64 (*.f64 2/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 x)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (sin.f64 x)) 1/9))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))) (+.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 x)) (*.f64 eps (+.f64 (*.f64 2/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9)))))))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 x)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (sin.f64 x)) 1/9))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))) (+.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 x)) (+.f64 (*.f64 eps (+.f64 (*.f64 2/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2/9 (*.f64 (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/9))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/9))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 x)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/6 (cos.f64 x)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/9) (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))))) (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/9) (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/6 (cos.f64 x)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/9) (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))))))))))))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps))))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps))))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps))))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps))))
(pow.f64 (sin.f64 eps) 1/3)
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 eps) x) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/9))) (pow.f64 (sin.f64 eps) 1/3))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3) (*.f64 (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))) (pow.f64 x 2)))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 eps) x) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/9))) (pow.f64 (sin.f64 eps) 1/3)))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3) (*.f64 (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))) (pow.f64 x 2)))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 eps) x) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/9))) (+.f64 (pow.f64 (sin.f64 eps) 1/3) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3) (*.f64 (-.f64 (*.f64 -1/6 (cos.f64 eps)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/9) (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2))))))))) (pow.f64 x 3)))))))
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 1/3)
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 1/3)
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 1/3)
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 1/3)
(pow.f64 (sin.f64 x) 1/3)
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 x) eps) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/9))) (pow.f64 (sin.f64 x) 1/3))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 x) eps) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/9))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (pow.f64 eps 2) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (pow.f64 (sin.f64 x) 1/3)))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 x) eps) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/9))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (pow.f64 eps 3) (-.f64 (*.f64 -1/6 (cos.f64 x)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/9) (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (pow.f64 eps 2) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (pow.f64 (sin.f64 x) 1/3))))
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 1/3)
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 1/3)
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 1/3)
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 1/3)
Outputs
(*.f64 (pow.f64 1 1/3) (sin.f64 eps))
(sin.f64 eps)
(+.f64 (*.f64 (-.f64 (+.f64 (*.f64 2/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9)))) 1) x) (*.f64 (pow.f64 1 1/3) (sin.f64 eps)))
(fma.f64 (+.f64 (*.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18))) 1) -1) x (sin.f64 eps))
(fma.f64 (+.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18))) -1) x (sin.f64 eps))
(fma.f64 (fma.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18)) -1) x (sin.f64 eps))
(+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 eps)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))))) (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9))))) (pow.f64 x 2)) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 2/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9)))) 1) x) (*.f64 (pow.f64 1 1/3) (sin.f64 eps))))
(fma.f64 (+.f64 (*.f64 1/3 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2))))) (fma.f64 (cbrt.f64 (sin.f64 eps)) (fma.f64 2/3 (*.f64 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))) (cbrt.f64 (/.f64 1 (sin.f64 eps)))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))))) (*.f64 (*.f64 2/9 (pow.f64 (cos.f64 eps) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18))))) (*.f64 x x) (fma.f64 (+.f64 (*.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18))) 1) -1) x (sin.f64 eps)))
(fma.f64 (fma.f64 1/3 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (fma.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) 2/9 (*.f64 (cbrt.f64 (sin.f64 eps)) (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps))))))))) (*.f64 x x) (fma.f64 (+.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18))) -1) x (sin.f64 eps)))
(fma.f64 (+.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (*.f64 (pow.f64 (cos.f64 eps) 2) 2/9)) (+.f64 (*.f64 1/9 (*.f64 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (cbrt.f64 (sin.f64 eps)))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (+.f64 1/3 (*.f64 (cbrt.f64 (sin.f64 eps)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps))))))))) (*.f64 x x) (fma.f64 (fma.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18)) -1) x (sin.f64 eps)))
(+.f64 (*.f64 (+.f64 (*.f64 (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/9) (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2))))))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/6 (cos.f64 eps)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/9) (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))))))))) (pow.f64 (*.f64 1 (sin.f64 eps)) 1/3)) (+.f64 1/6 (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 eps) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/9))) (+.f64 (*.f64 2/9 (*.f64 (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/9))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/6 (cos.f64 eps)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/9) (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2))))))))))))))) (pow.f64 x 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 eps)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))))) (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9))))) (pow.f64 x 2)) (+.f64 (*.f64 (-.f64 (+.f64 (*.f64 2/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9)))) 1) x) (*.f64 (pow.f64 1 1/3) (sin.f64 eps)))))
(fma.f64 (fma.f64 (fma.f64 2/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18)) (*.f64 (cos.f64 eps) (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))))) (*.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 eps))) (-.f64 (*.f64 (cos.f64 eps) -1/6) (fma.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)))) (*.f64 2/3 (*.f64 (cos.f64 eps) (*.f64 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)))))))))) (cbrt.f64 (sin.f64 eps)) (+.f64 1/6 (fma.f64 1/3 (*.f64 (cos.f64 eps) (*.f64 (fma.f64 2/3 (*.f64 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))) (cbrt.f64 (/.f64 1 (sin.f64 eps)))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18)))) (fma.f64 2/9 (*.f64 (cos.f64 eps) (*.f64 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)))) (*.f64 1/3 (-.f64 (*.f64 (cos.f64 eps) -1/6) (fma.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)))) (*.f64 2/3 (*.f64 (cos.f64 eps) (*.f64 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)))))))))))) (pow.f64 x 3) (fma.f64 (+.f64 (*.f64 1/3 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2))))) (fma.f64 (cbrt.f64 (sin.f64 eps)) (fma.f64 2/3 (*.f64 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))) (cbrt.f64 (/.f64 1 (sin.f64 eps)))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))))) (*.f64 (*.f64 2/9 (pow.f64 (cos.f64 eps) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18))))) (*.f64 x x) (fma.f64 (+.f64 (*.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18))) 1) -1) x (sin.f64 eps))))
(fma.f64 (+.f64 1/6 (fma.f64 (cbrt.f64 (sin.f64 eps)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 eps))) (-.f64 (*.f64 (cos.f64 eps) -1/6) (fma.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (*.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3))) (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)))))))) (*.f64 2/9 (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18)))))) (fma.f64 1/3 (*.f64 (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps)))))) (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18)))) (fma.f64 2/9 (*.f64 (cos.f64 eps) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)))) (*.f64 1/3 (-.f64 (*.f64 (cos.f64 eps) -1/6) (fma.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (*.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3))) (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)))))))))))) (pow.f64 x 3) (fma.f64 (fma.f64 1/3 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (fma.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) 2/9 (*.f64 (cbrt.f64 (sin.f64 eps)) (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps))))))))) (*.f64 x x) (fma.f64 (+.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18))) -1) x (sin.f64 eps))))
(fma.f64 (+.f64 1/6 (fma.f64 (cbrt.f64 (sin.f64 eps)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) (-.f64 -1/6 (*.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3))))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))) (*.f64 (pow.f64 (cos.f64 eps) 3) -1/27)))) (*.f64 2/9 (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18)))))) (+.f64 (*.f64 1/3 (+.f64 (*.f64 (cos.f64 eps) (-.f64 -1/6 (*.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3))))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))) (*.f64 (pow.f64 (cos.f64 eps) 3) -1/27)))) (*.f64 (cos.f64 eps) (+.f64 (*.f64 (*.f64 (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps)))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18))) 1/3) (*.f64 (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18))) 2/9)))))) (pow.f64 x 3) (fma.f64 (+.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (*.f64 (pow.f64 (cos.f64 eps) 2) 2/9)) (+.f64 (*.f64 1/9 (*.f64 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (cbrt.f64 (sin.f64 eps)))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (+.f64 1/3 (*.f64 (cbrt.f64 (sin.f64 eps)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps))))))))) (*.f64 x x) (fma.f64 (fma.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18)) -1) x (sin.f64 eps))))
(fma.f64 (+.f64 1/6 (fma.f64 (cbrt.f64 (sin.f64 eps)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 eps))) (fma.f64 (cos.f64 eps) (-.f64 -1/6 (*.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))) (*.f64 (pow.f64 (cos.f64 eps) 3) -1/27)))) (*.f64 2/9 (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18)))))) (+.f64 (*.f64 1/3 (fma.f64 (cos.f64 eps) (-.f64 -1/6 (*.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))) (*.f64 (pow.f64 (cos.f64 eps) 3) -1/27)))) (*.f64 (cos.f64 eps) (+.f64 (*.f64 (*.f64 (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps)))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18))) 1/3) (*.f64 (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18))) 2/9)))))) (pow.f64 x 3) (fma.f64 (+.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (*.f64 (pow.f64 (cos.f64 eps) 2) 2/9)) (+.f64 (*.f64 1/9 (*.f64 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (cbrt.f64 (sin.f64 eps)))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (+.f64 1/3 (*.f64 (cbrt.f64 (sin.f64 eps)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps))))))))) (*.f64 x x) (fma.f64 (fma.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18)) -1) x (sin.f64 eps))))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x)))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x)))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x)))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x)))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 x)) (sin.f64 x))
(-.f64 (sin.f64 x) (sin.f64 x))
0
(-.f64 (+.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 x)) (*.f64 eps (+.f64 (*.f64 2/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9)))))) (sin.f64 x))
(-.f64 (+.f64 (sin.f64 x) (*.f64 eps (*.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))) 1))) (sin.f64 x))
(+.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18)))) 0)
(*.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))))
(-.f64 (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 x)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (sin.f64 x)) 1/9))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))) (+.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 x)) (*.f64 eps (+.f64 (*.f64 2/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))))) (sin.f64 x))
(-.f64 (fma.f64 (*.f64 eps eps) (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 x))) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))))) (fma.f64 2/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) (*.f64 1/3 (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))))) (+.f64 (sin.f64 x) (*.f64 eps (*.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))) 1)))) (sin.f64 x))
(fma.f64 (*.f64 eps eps) (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 x))) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))))) (fma.f64 1/3 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3)) (*.f64 2/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))) (+.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18)))) 0))
(*.f64 eps (+.f64 (*.f64 (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))) (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))))) (fma.f64 1/3 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (*.f64 2/9 (pow.f64 (cos.f64 x) 2))))) eps) (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18)))))
(-.f64 (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 x)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (sin.f64 x)) 1/9))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))) (+.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 x)) (+.f64 (*.f64 eps (+.f64 (*.f64 2/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2/9 (*.f64 (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/9))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/9))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/6 (cos.f64 x)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/9) (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))))) (*.f64 (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/6 (cos.f64 x)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/9) (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))))) (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/9) (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))))) (pow.f64 (*.f64 1 (sin.f64 x)) 1/3))))))))) (sin.f64 x))
(-.f64 (fma.f64 (*.f64 eps eps) (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 x))) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))))) (fma.f64 2/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) (*.f64 1/3 (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))))) (+.f64 (sin.f64 x) (fma.f64 eps (*.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))) 1) (*.f64 (pow.f64 eps 3) (fma.f64 2/9 (*.f64 (cos.f64 x) (*.f64 (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18)))) (fma.f64 1/3 (*.f64 (cos.f64 x) (*.f64 (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 x))) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18)))) (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 x))) (-.f64 (*.f64 -1/6 (cos.f64 x)) (fma.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)))) (*.f64 2/3 (*.f64 (cos.f64 x) (*.f64 (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18)))))))) (*.f64 2/9 (*.f64 (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18))))) (*.f64 1/3 (-.f64 (*.f64 -1/6 (cos.f64 x)) (fma.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)))) (*.f64 2/3 (*.f64 (cos.f64 x) (*.f64 (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))))))))))))))) (sin.f64 x))
(fma.f64 (*.f64 eps eps) (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 x))) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))))) (fma.f64 1/3 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3)) (*.f64 2/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))) (+.f64 (fma.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))) (*.f64 (pow.f64 eps 3) (fma.f64 2/9 (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3)) (*.f64 (cos.f64 x) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18)))) (fma.f64 1/3 (*.f64 (cos.f64 x) (*.f64 (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 x))) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18)))) (fma.f64 1/3 (-.f64 (*.f64 -1/6 (cos.f64 x)) (fma.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))) (*.f64 (cos.f64 x) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3))) (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))))))) (*.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))) (-.f64 (*.f64 -1/6 (cos.f64 x)) (fma.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))) (*.f64 (cos.f64 x) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3))) (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))))))) (*.f64 2/9 (*.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18))))))))))) 0))
(fma.f64 (*.f64 eps eps) (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))) (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))))) (fma.f64 1/3 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (*.f64 2/9 (pow.f64 (cos.f64 x) 2))))) (fma.f64 (pow.f64 eps 3) (+.f64 (+.f64 (*.f64 (cbrt.f64 (sin.f64 x)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18)) (*.f64 (*.f64 2/9 (cos.f64 x)) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18))))))) (*.f64 (+.f64 (*.f64 (cos.f64 x) (-.f64 -1/6 (*.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18))))))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))) (*.f64 (pow.f64 (cos.f64 x) 3) -1/27))) (+.f64 1/3 (*.f64 (cbrt.f64 (sin.f64 x)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))))))) (*.f64 (cos.f64 x) (+.f64 (*.f64 (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))) 2/9) (*.f64 (*.f64 (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))) (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18))) 1/3)))) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))))))
(fma.f64 (*.f64 eps eps) (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))) (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))))) (fma.f64 1/3 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (*.f64 2/9 (pow.f64 (cos.f64 x) 2))))) (fma.f64 (pow.f64 eps 3) (+.f64 (+.f64 (*.f64 (cbrt.f64 (sin.f64 x)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18)) (*.f64 (*.f64 2/9 (cos.f64 x)) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18))))))) (*.f64 (fma.f64 (cos.f64 x) (-.f64 -1/6 (*.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))) (*.f64 (pow.f64 (cos.f64 x) 3) -1/27))) (+.f64 1/3 (*.f64 (cbrt.f64 (sin.f64 x)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))))))) (*.f64 (cos.f64 x) (+.f64 (*.f64 (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))) 2/9) (*.f64 (*.f64 (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))) (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18))) 1/3)))) (*.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))))))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps)))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps)))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps)))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps)))) (sin.f64 x))
(-.f64 (*.f64 1 (sin.f64 (+.f64 eps x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(*.f64 (pow.f64 1 1/3) (sin.f64 eps))
(sin.f64 eps)
(+.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9)))) x) (*.f64 (pow.f64 1 1/3) (sin.f64 eps)))
(fma.f64 (*.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18))) 1) x (sin.f64 eps))
(fma.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18))) x (sin.f64 eps))
(+.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9)))) x) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 eps)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))))) (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9))))) (pow.f64 x 2)) (*.f64 (pow.f64 1 1/3) (sin.f64 eps))))
(fma.f64 (*.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18))) 1) x (fma.f64 (+.f64 (*.f64 1/3 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2))))) (fma.f64 (cbrt.f64 (sin.f64 eps)) (fma.f64 2/3 (*.f64 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))) (cbrt.f64 (/.f64 1 (sin.f64 eps)))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))))) (*.f64 (*.f64 2/9 (pow.f64 (cos.f64 eps) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18))))) (*.f64 x x) (sin.f64 eps)))
(fma.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18))) x (fma.f64 (fma.f64 1/3 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (fma.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) 2/9 (*.f64 (cbrt.f64 (sin.f64 eps)) (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps))))))))) (*.f64 x x) (sin.f64 eps)))
(fma.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18))) x (fma.f64 (+.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (*.f64 (pow.f64 (cos.f64 eps) 2) 2/9)) (+.f64 (*.f64 1/9 (*.f64 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (cbrt.f64 (sin.f64 eps)))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (+.f64 1/3 (*.f64 (cbrt.f64 (sin.f64 eps)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps))))))))) (*.f64 x x) (sin.f64 eps)))
(+.f64 (*.f64 (+.f64 (*.f64 2/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 eps) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9)))) x) (+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 eps)) 1/3) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/9) (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2))))))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/6 (cos.f64 eps)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/9) (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2))))))))))))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 eps) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/9))) (+.f64 (*.f64 2/9 (*.f64 (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/9))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/6 (cos.f64 eps)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/9) (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))))))))))) (pow.f64 x 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 eps)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/9))))) (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9))))) (pow.f64 x 2)) (*.f64 (pow.f64 1 1/3) (sin.f64 eps)))))
(fma.f64 (*.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18))) 1) x (fma.f64 (fma.f64 (cbrt.f64 (sin.f64 eps)) (fma.f64 2/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18)) (*.f64 (cos.f64 eps) (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))))) (*.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 eps))) (-.f64 (*.f64 (cos.f64 eps) -1/6) (fma.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)))) (*.f64 2/3 (*.f64 (cos.f64 eps) (*.f64 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)))))))))) (fma.f64 1/3 (*.f64 (cos.f64 eps) (*.f64 (fma.f64 2/3 (*.f64 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))) (cbrt.f64 (/.f64 1 (sin.f64 eps)))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18)))) (fma.f64 2/9 (*.f64 (cos.f64 eps) (*.f64 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)))) (*.f64 1/3 (-.f64 (*.f64 (cos.f64 eps) -1/6) (fma.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)))) (*.f64 2/3 (*.f64 (cos.f64 eps) (*.f64 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18))))))))))) (pow.f64 x 3) (fma.f64 (+.f64 (*.f64 1/3 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2))))) (fma.f64 (cbrt.f64 (sin.f64 eps)) (fma.f64 2/3 (*.f64 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))) (cbrt.f64 (/.f64 1 (sin.f64 eps)))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))))) (*.f64 (*.f64 2/9 (pow.f64 (cos.f64 eps) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18))))) (*.f64 x x) (sin.f64 eps))))
(fma.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18))) x (fma.f64 (pow.f64 x 3) (fma.f64 (cbrt.f64 (sin.f64 eps)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 eps))) (-.f64 (*.f64 (cos.f64 eps) -1/6) (fma.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (*.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3))) (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)))))))) (*.f64 2/9 (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18)))))) (fma.f64 1/3 (*.f64 (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps)))))) (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18)))) (fma.f64 2/9 (*.f64 (cos.f64 eps) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)))) (*.f64 1/3 (-.f64 (*.f64 (cos.f64 eps) -1/6) (fma.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (*.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3))) (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))))))))))) (fma.f64 (fma.f64 1/3 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (fma.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) 2/9 (*.f64 (cbrt.f64 (sin.f64 eps)) (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps))))))))) (*.f64 x x) (sin.f64 eps))))
(fma.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18))) x (fma.f64 (pow.f64 x 3) (fma.f64 (cbrt.f64 (sin.f64 eps)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) (-.f64 -1/6 (*.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3))))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))) (*.f64 (pow.f64 (cos.f64 eps) 3) -1/27)))) (*.f64 2/9 (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18)))))) (+.f64 (*.f64 1/3 (+.f64 (*.f64 (cos.f64 eps) (-.f64 -1/6 (*.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3))))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))) (*.f64 (pow.f64 (cos.f64 eps) 3) -1/27)))) (*.f64 (cos.f64 eps) (+.f64 (*.f64 (*.f64 (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps)))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18))) 1/3) (*.f64 (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18))) 2/9))))) (fma.f64 (+.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (*.f64 (pow.f64 (cos.f64 eps) 2) 2/9)) (+.f64 (*.f64 1/9 (*.f64 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (cbrt.f64 (sin.f64 eps)))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (+.f64 1/3 (*.f64 (cbrt.f64 (sin.f64 eps)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps))))))))) (*.f64 x x) (sin.f64 eps))))
(fma.f64 (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 eps) 4) 1/18))) x (fma.f64 (pow.f64 x 3) (fma.f64 (cbrt.f64 (sin.f64 eps)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 eps))) (fma.f64 (cos.f64 eps) (-.f64 -1/6 (*.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))) (*.f64 (pow.f64 (cos.f64 eps) 3) -1/27)))) (*.f64 2/9 (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 (cos.f64 eps) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 8)) 1/18)))))) (+.f64 (*.f64 1/3 (fma.f64 (cos.f64 eps) (-.f64 -1/6 (*.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))) (*.f64 (pow.f64 (cos.f64 eps) 3) -1/27)))) (*.f64 (cos.f64 eps) (+.f64 (*.f64 (*.f64 (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps)))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18))) 1/3) (*.f64 (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18))) 2/9))))) (fma.f64 (+.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (*.f64 (pow.f64 (cos.f64 eps) 2) 2/9)) (+.f64 (*.f64 1/9 (*.f64 (*.f64 (pow.f64 (cos.f64 eps) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 4)) 1/18))) (cbrt.f64 (sin.f64 eps)))) (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (+.f64 1/3 (*.f64 (cbrt.f64 (sin.f64 eps)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 eps))))))))) (*.f64 x x) (sin.f64 eps))))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x))))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x))))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x))))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 eps (*.f64 -1 x))))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(*.f64 (pow.f64 1 1/3) (sin.f64 x))
(sin.f64 x)
(+.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 x)) (*.f64 eps (+.f64 (*.f64 2/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))))
(+.f64 (sin.f64 x) (*.f64 eps (*.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))) 1)))
(fma.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))) (sin.f64 x))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 x)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (sin.f64 x)) 1/9))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))) (+.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 x)) (*.f64 eps (+.f64 (*.f64 2/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9)))))))
(fma.f64 (*.f64 eps eps) (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 x))) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))))) (fma.f64 2/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) (*.f64 1/3 (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))))) (+.f64 (sin.f64 x) (*.f64 eps (*.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))) 1))))
(fma.f64 (*.f64 eps eps) (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 x))) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))))) (fma.f64 1/3 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3)) (*.f64 2/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))) (fma.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))) (sin.f64 x)))
(fma.f64 (*.f64 eps eps) (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))) (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))))) (fma.f64 1/3 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (*.f64 2/9 (pow.f64 (cos.f64 x) 2))))) (fma.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))) (sin.f64 x)))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 x)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (+.f64 (*.f64 2/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (sin.f64 x)) 1/9))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))) (+.f64 (*.f64 (pow.f64 1 1/3) (sin.f64 x)) (+.f64 (*.f64 eps (+.f64 (*.f64 2/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))) (*.f64 1/3 (*.f64 (cos.f64 x) (pow.f64 (*.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 2/9 (*.f64 (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/9))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/9))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/9))) (+.f64 (*.f64 (pow.f64 (*.f64 1 (sin.f64 x)) 1/3) (+.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/3) (-.f64 (*.f64 -1/6 (cos.f64 x)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/9) (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))))) (*.f64 2/9 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/9) (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))) (*.f64 1/3 (*.f64 (pow.f64 1 1/3) (-.f64 (*.f64 -1/6 (cos.f64 x)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/9) (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))))))))))))))))
(fma.f64 (*.f64 eps eps) (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 x))) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))))) (fma.f64 2/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) (*.f64 1/3 (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))))) (+.f64 (sin.f64 x) (fma.f64 eps (*.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))) 1) (*.f64 (pow.f64 eps 3) (fma.f64 2/9 (*.f64 (cos.f64 x) (*.f64 (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18)))) (fma.f64 1/3 (*.f64 (cos.f64 x) (*.f64 (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 x))) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18)))) (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 x))) (-.f64 (*.f64 -1/6 (cos.f64 x)) (fma.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)))) (*.f64 2/3 (*.f64 (cos.f64 x) (*.f64 (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18)))))))) (*.f64 2/9 (*.f64 (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18))))) (*.f64 1/3 (-.f64 (*.f64 -1/6 (cos.f64 x)) (fma.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)))) (*.f64 2/3 (*.f64 (cos.f64 x) (*.f64 (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18)))))))))))))))
(+.f64 (fma.f64 (*.f64 eps eps) (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 x))) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))))) (fma.f64 1/3 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3)) (*.f64 2/9 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2))))) (fma.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))) (sin.f64 x))) (*.f64 (pow.f64 eps 3) (fma.f64 2/9 (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3)) (*.f64 (cos.f64 x) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18)))) (fma.f64 1/3 (*.f64 (cos.f64 x) (*.f64 (fma.f64 2/3 (*.f64 (cbrt.f64 (/.f64 1 (sin.f64 x))) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3))) (*.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18)))) (fma.f64 1/3 (-.f64 (*.f64 -1/6 (cos.f64 x)) (fma.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))) (*.f64 (cos.f64 x) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3))) (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))))))) (*.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))) (-.f64 (*.f64 -1/6 (cos.f64 x)) (fma.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))) (*.f64 (cos.f64 x) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3))) (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))))))) (*.f64 2/9 (*.f64 (*.f64 (cos.f64 x) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18)))))))))))
(+.f64 (fma.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))) (sin.f64 x)) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 eps (+.f64 (+.f64 (*.f64 (cbrt.f64 (sin.f64 x)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18)) (*.f64 (*.f64 2/9 (cos.f64 x)) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18))))))) (*.f64 (+.f64 (*.f64 (cos.f64 x) (-.f64 -1/6 (*.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18))))))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))) (*.f64 (pow.f64 (cos.f64 x) 3) -1/27))) (+.f64 1/3 (*.f64 (cbrt.f64 (sin.f64 x)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))))))) (*.f64 (cos.f64 x) (+.f64 (*.f64 (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))) 2/9) (*.f64 (*.f64 (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))) (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18))) 1/3))))) (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))) (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))))) (fma.f64 1/3 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (*.f64 2/9 (pow.f64 (cos.f64 x) 2))))))))
(+.f64 (fma.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18) (pow.f64 (pow.f64 (sin.f64 x) 4) 1/18))) (sin.f64 x)) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 eps (+.f64 (+.f64 (*.f64 (cbrt.f64 (sin.f64 x)) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 8)) 1/18)) (*.f64 (*.f64 2/9 (cos.f64 x)) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18))))))) (*.f64 (fma.f64 (cos.f64 x) (-.f64 -1/6 (*.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))) (*.f64 (pow.f64 (cos.f64 x) 3) -1/27))) (+.f64 1/3 (*.f64 (cbrt.f64 (sin.f64 x)) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))))))) (*.f64 (cos.f64 x) (+.f64 (*.f64 (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))) 2/9) (*.f64 (*.f64 (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))) (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18))) 1/3))))) (fma.f64 (cbrt.f64 (sin.f64 x)) (fma.f64 1/9 (*.f64 (pow.f64 (cos.f64 x) 2) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 4)) 1/18))) (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 2/3 (cbrt.f64 (/.f64 1 (sin.f64 x)))))) (fma.f64 1/3 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (*.f64 2/9 (pow.f64 (cos.f64 x) 2))))))))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(*.f64 (pow.f64 1 1/3) (sin.f64 (+.f64 eps x)))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps))))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps))))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps))))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(*.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 x (*.f64 -1 eps))))
(*.f64 1 (sin.f64 (+.f64 eps x)))
(sin.f64 (+.f64 eps x))
(pow.f64 (sin.f64 eps) 1/3)
(cbrt.f64 (sin.f64 eps))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 eps) x) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/9))) (pow.f64 (sin.f64 eps) 1/3))
(fma.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18)) (*.f64 (cos.f64 eps) x)) (cbrt.f64 (sin.f64 eps)))
(fma.f64 1/3 (*.f64 (cos.f64 eps) (*.f64 x (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18)))) (cbrt.f64 (sin.f64 eps)))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3) (*.f64 (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))) (pow.f64 x 2)))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 eps) x) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/9))) (pow.f64 (sin.f64 eps) 1/3)))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))) (*.f64 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))) (*.f64 x x))) (fma.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18)) (*.f64 (cos.f64 eps) x)) (cbrt.f64 (sin.f64 eps))))
(fma.f64 1/3 (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 (*.f64 x x) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))))) (fma.f64 1/3 (*.f64 (cos.f64 eps) (*.f64 x (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18)))) (cbrt.f64 (sin.f64 eps))))
(+.f64 (cbrt.f64 (sin.f64 eps)) (*.f64 1/3 (*.f64 x (+.f64 (*.f64 (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)))) x) (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18)) (cos.f64 eps))))))
(+.f64 (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3) (*.f64 (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2)))) (pow.f64 x 2)))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 eps) x) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/9))) (+.f64 (pow.f64 (sin.f64 eps) 1/3) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3) (*.f64 (-.f64 (*.f64 -1/6 (cos.f64 eps)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/9) (*.f64 (cos.f64 eps) (-.f64 (*.f64 -1/2 (sin.f64 eps)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/9) (pow.f64 (cos.f64 eps) 2))))))))) (pow.f64 x 3)))))))
(fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))) (*.f64 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))) (*.f64 x x))) (+.f64 (fma.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18)) (*.f64 (cos.f64 eps) x)) (cbrt.f64 (sin.f64 eps))) (*.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))) (*.f64 (-.f64 (*.f64 (cos.f64 eps) -1/6) (fma.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)))) (*.f64 2/3 (*.f64 (cos.f64 eps) (*.f64 (+.f64 (*.f64 (sin.f64 eps) -1/2) (*.f64 -1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18)) (pow.f64 (cos.f64 eps) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18))))))) (pow.f64 x 3))))))
(fma.f64 1/3 (*.f64 (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)) (*.f64 (*.f64 x x) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))))) (fma.f64 1/3 (*.f64 (cos.f64 eps) (*.f64 x (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18)))) (fma.f64 1/3 (*.f64 (-.f64 (*.f64 (cos.f64 eps) -1/6) (fma.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (*.f64 (cos.f64 eps) (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3))) (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 eps) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))))))) (*.f64 (pow.f64 x 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))))) (cbrt.f64 (sin.f64 eps)))))
(+.f64 (fma.f64 1/3 (*.f64 (cos.f64 eps) (*.f64 x (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18)))) (cbrt.f64 (sin.f64 eps))) (*.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)))) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 eps) (-.f64 -1/6 (*.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3))))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))) (*.f64 (pow.f64 (cos.f64 eps) 3) -1/27))) (pow.f64 x 3)) (*.f64 x (*.f64 x (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)))))))
(+.f64 (fma.f64 1/3 (*.f64 (cos.f64 eps) (*.f64 x (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)) 1/18)))) (cbrt.f64 (sin.f64 eps))) (*.f64 (*.f64 1/3 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2)))) (+.f64 (*.f64 (fma.f64 (cos.f64 eps) (-.f64 -1/6 (*.f64 (*.f64 (*.f64 2/3 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 5)) 1/18)) (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 eps) 2))) (*.f64 (pow.f64 (cos.f64 eps) 3) -1/27))) (pow.f64 x 3)) (*.f64 x (*.f64 x (fma.f64 (sin.f64 eps) -1/2 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (*.f64 (pow.f64 (/.f64 1 (sin.f64 eps)) 1/18) (pow.f64 (cos.f64 eps) 2))) -1/3)))))))
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))
(pow.f64 (sin.f64 x) 1/3)
(cbrt.f64 (sin.f64 x))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 x) eps) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/9))) (pow.f64 (sin.f64 x) 1/3))
(fma.f64 1/3 (*.f64 (cos.f64 x) (*.f64 eps (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18)))) (cbrt.f64 (sin.f64 x)))
(fma.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18)) (*.f64 eps (cos.f64 x))) (cbrt.f64 (sin.f64 x)))
(fma.f64 1/3 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18)))) (cbrt.f64 (sin.f64 x)))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 x) eps) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/9))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (pow.f64 eps 2) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (pow.f64 (sin.f64 x) 1/3)))
(fma.f64 1/3 (*.f64 (cos.f64 x) (*.f64 eps (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18)))) (fma.f64 1/3 (*.f64 (*.f64 eps eps) (*.f64 (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)))) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))))) (cbrt.f64 (sin.f64 x))))
(fma.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18)) (*.f64 eps (cos.f64 x))) (fma.f64 (*.f64 (*.f64 1/3 (*.f64 eps eps)) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3))) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))) (cbrt.f64 (sin.f64 x))))
(+.f64 (cbrt.f64 (sin.f64 x)) (*.f64 1/3 (*.f64 eps (+.f64 (*.f64 (cos.f64 x) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18))) (*.f64 eps (*.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)))))))))
(+.f64 (*.f64 1/3 (*.f64 (*.f64 (cos.f64 x) eps) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/9))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (pow.f64 eps 3) (-.f64 (*.f64 -1/6 (cos.f64 x)) (+.f64 (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/9) (*.f64 (cos.f64 x) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2)))))))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (+.f64 (*.f64 1/3 (*.f64 (*.f64 (pow.f64 eps 2) (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/9) (pow.f64 (cos.f64 x) 2))))) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/3))) (pow.f64 (sin.f64 x) 1/3))))
(fma.f64 1/3 (*.f64 (cos.f64 x) (*.f64 eps (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18)))) (fma.f64 1/3 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))) (*.f64 (pow.f64 eps 3) (-.f64 (*.f64 -1/6 (cos.f64 x)) (fma.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)))) (*.f64 2/3 (*.f64 (cos.f64 x) (*.f64 (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)))) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))))))))) (fma.f64 1/3 (*.f64 (*.f64 eps eps) (*.f64 (-.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)))) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))))) (cbrt.f64 (sin.f64 x)))))
(+.f64 (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 eps 3) (-.f64 (*.f64 -1/6 (cos.f64 x)) (fma.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))) (*.f64 (cos.f64 x) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3))) (*.f64 1/27 (*.f64 (pow.f64 (cos.f64 x) 3) (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))))))))) (*.f64 (*.f64 1/3 (*.f64 eps eps)) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)) (pow.f64 (cos.f64 x) 2)) -1/3))))) (fma.f64 1/3 (*.f64 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18)) (*.f64 eps (cos.f64 x))) (cbrt.f64 (sin.f64 x))))
(+.f64 (cbrt.f64 (sin.f64 x)) (*.f64 1/3 (+.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18)))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 (cos.f64 x) (-.f64 -1/6 (*.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18))))))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))) (*.f64 (pow.f64 (cos.f64 x) 3) -1/27)))) (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18))))))))))
(+.f64 (cbrt.f64 (sin.f64 x)) (*.f64 1/3 (+.f64 (*.f64 eps (*.f64 (cos.f64 x) (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2)) 1/18)))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))) (+.f64 (*.f64 (pow.f64 eps 3) (fma.f64 (cos.f64 x) (-.f64 -1/6 (*.f64 (*.f64 2/3 (*.f64 (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18) (pow.f64 (/.f64 1 (pow.f64 (sin.f64 x) 5)) 1/18))) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18)))))) (*.f64 (cbrt.f64 (/.f64 1 (pow.f64 (sin.f64 x) 2))) (*.f64 (pow.f64 (cos.f64 x) 3) -1/27)))) (*.f64 (*.f64 eps eps) (fma.f64 -1/2 (sin.f64 x) (*.f64 (*.f64 -1/3 (pow.f64 (cos.f64 x) 2)) (*.f64 (pow.f64 (/.f64 1 (sin.f64 x)) 1/18) (pow.f64 (/.f64 1 (sin.f64 x)) 1/18))))))))))
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))
(pow.f64 (sin.f64 (+.f64 eps x)) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 1/3)
(cbrt.f64 (sin.f64 (+.f64 eps x)))

localize21.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 47 to 10 computations (78.7% saved)

series7.0ms (0%)

Counts
3 → 72
Calls

18 calls:

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

rewrite202.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
762×fma-def_binary64
632×log-prod_binary64
381×fma-neg_binary64
236×pow1/3_binary64
235×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify148.0ms (1%)

Algorithm
egg-herbie
Rules
588×sub-neg_binary64
513×distribute-neg-in_binary64
495×fma-def_binary64
396×*-commutative_binary64
384×+-commutative_binary64
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0831214
12411202
26531133
321161121
436991121
548481119
669021119
Stop Event
node limit
Counts
321 → 295
Calls
Call 1
Inputs
(sin.f64 eps)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps))))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(*.f64 (cos.f64 x) eps)
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(*.f64 (cos.f64 eps) x)
(+.f64 (*.f64 (cos.f64 eps) x) (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))))
(+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (*.f64 1/120 (*.f64 (cos.f64 eps) (pow.f64 x 5)))))
(+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 eps) (pow.f64 x 7))) (+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (*.f64 1/120 (*.f64 (cos.f64 eps) (pow.f64 x 5))))))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(sin.f64 x)
(+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (sin.f64 x) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 6) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(sin.f64 eps)
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (sin.f64 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(sin.f64 x)
(+.f64 (*.f64 (cos.f64 x) eps) (sin.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
Outputs
(sin.f64 eps)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps)))
(fma.f64 (+.f64 (cos.f64 eps) -1) x (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (sin.f64 eps)))
(-.f64 (fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 (cos.f64 eps) x (sin.f64 eps))) x)
(fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (-.f64 (sin.f64 eps) x))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 -1/6 (cos.f64 eps) 1/6) (pow.f64 x 3) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps))))
(fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (sin.f64 eps) (*.f64 -1/2 (*.f64 x x)) (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps))))
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps))))
(fma.f64 x (+.f64 (cos.f64 eps) (*.f64 x (*.f64 (sin.f64 eps) -1/2))) (-.f64 (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps)) x))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 (cos.f64 x) eps (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))))
(+.f64 (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))
(fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/2)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))))
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (+.f64 (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))))
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (*.f64 -1/2 (*.f64 eps eps)))))
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4)))))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(-.f64 (+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x))) (sin.f64 x))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (+.f64 (cos.f64 eps) -1)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(*.f64 (cos.f64 eps) x)
(+.f64 (*.f64 (cos.f64 eps) x) (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))))
(fma.f64 (cos.f64 eps) x (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))))
(*.f64 (cos.f64 eps) (+.f64 x (*.f64 -1/6 (pow.f64 x 3))))
(+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (*.f64 1/120 (*.f64 (cos.f64 eps) (pow.f64 x 5)))))
(fma.f64 (cos.f64 eps) x (fma.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)) (*.f64 1/120 (*.f64 (cos.f64 eps) (pow.f64 x 5)))))
(fma.f64 (cos.f64 eps) x (fma.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)) (*.f64 (cos.f64 eps) (*.f64 (pow.f64 x 5) 1/120))))
(fma.f64 (cos.f64 eps) (*.f64 -1/6 (pow.f64 x 3)) (*.f64 (cos.f64 eps) (+.f64 (*.f64 1/120 (pow.f64 x 5)) x)))
(*.f64 (cos.f64 eps) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) (+.f64 x (*.f64 1/120 (pow.f64 x 5)))))
(+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 eps) (pow.f64 x 7))) (+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (*.f64 1/120 (*.f64 (cos.f64 eps) (pow.f64 x 5))))))
(fma.f64 -1/5040 (*.f64 (cos.f64 eps) (pow.f64 x 7)) (fma.f64 (cos.f64 eps) x (fma.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)) (*.f64 1/120 (*.f64 (cos.f64 eps) (pow.f64 x 5))))))
(fma.f64 -1/5040 (*.f64 (cos.f64 eps) (pow.f64 x 7)) (fma.f64 (cos.f64 eps) x (fma.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)) (*.f64 (cos.f64 eps) (*.f64 (pow.f64 x 5) 1/120)))))
(+.f64 (*.f64 (cos.f64 eps) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (cos.f64 eps) (+.f64 x (*.f64 -1/5040 (pow.f64 x 7)))))
(*.f64 (cos.f64 eps) (+.f64 (+.f64 x (*.f64 -1/6 (pow.f64 x 3))) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/5040 (pow.f64 x 7)))))
(*.f64 (cos.f64 eps) (+.f64 (+.f64 x (*.f64 -1/5040 (pow.f64 x 7))) (+.f64 (*.f64 1/120 (pow.f64 x 5)) (*.f64 -1/6 (pow.f64 x 3)))))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(sin.f64 x)
(+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (sin.f64 x))
(*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))))
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (sin.f64 x)))
(*.f64 (sin.f64 x) (+.f64 (*.f64 1/24 (pow.f64 eps 4)) (fma.f64 -1/2 (*.f64 eps eps) 1)))
(*.f64 (sin.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) (sin.f64 x))) (+.f64 (sin.f64 x) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 eps 6) (sin.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (+.f64 (sin.f64 x) (fma.f64 -1/720 (*.f64 (sin.f64 x) (pow.f64 eps 6)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))))
(+.f64 (*.f64 (sin.f64 x) (+.f64 (*.f64 -1/2 (*.f64 eps eps)) (*.f64 -1/720 (pow.f64 eps 6)))) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 eps 4)) 1) (sin.f64 x)))
(fma.f64 (sin.f64 x) (fma.f64 -1/720 (pow.f64 eps 6) (*.f64 -1/2 (*.f64 eps eps))) (*.f64 (sin.f64 x) (fma.f64 1/24 (pow.f64 eps 4) 1)))
(*.f64 (sin.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)))
(*.f64 (sin.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)))))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 eps) (sin.f64 x))
(sin.f64 eps)
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps)))
(fma.f64 (sin.f64 eps) (*.f64 -1/2 (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps)))
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 (cos.f64 eps) x (sin.f64 eps)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (fma.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)) (sin.f64 eps))))
(+.f64 (*.f64 (cos.f64 eps) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 x x)) 1) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 eps) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))) (fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(sin.f64 x)
(+.f64 (*.f64 (cos.f64 x) eps) (sin.f64 x))
(fma.f64 (cos.f64 x) eps (sin.f64 x))
(fma.f64 eps (cos.f64 x) (sin.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(+.f64 (fma.f64 (cos.f64 x) eps (sin.f64 x)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))
(fma.f64 eps (cos.f64 x) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (sin.f64 x)))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(+.f64 (fma.f64 (cos.f64 x) eps (sin.f64 x)) (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))))
(+.f64 (sin.f64 x) (+.f64 (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))))
(+.f64 (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (cos.f64 eps) (sin.f64 x)))
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (cos.f64 eps) (sin.f64 x)))

eval474.0ms (3.2%)

Compiler

Compiled 23867 to 9478 computations (60.3% saved)

prune722.0ms (4.9%)

Pruning

59 alts after pruning (55 fresh and 4 done)

PrunedKeptTotal
New988461034
Fresh22931
Picked011
Done235
Total1012591071
Error
0.0b
Counts
1071 → 59
Alt Table
Click to see full alt table
StatusErrorProgram
19.5b
(fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))
61.1b
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 3) (sin.f64 x))
35.7b
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
14.9b
(fma.f64 (*.f64 (sin.f64 eps) (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (fma.f64 (sin.f64 x) (cos.f64 eps) (neg.f64 (sin.f64 x))))
34.9b
(*.f64 (cos.f64 x) eps)
59.1b
(fma.f64 (sin.f64 x) (cos.f64 eps) (neg.f64 (sin.f64 x)))
37.2b
(fma.f64 (cos.f64 eps) x (-.f64 (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)) x))
61.8b
(*.f64 eps (*.f64 eps (*.f64 -1/2 (sin.f64 x))))
50.1b
(fma.f64 (*.f64 (cos.f64 x) (sqrt.f64 eps)) (sqrt.f64 eps) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))
36.4b
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 eps)) 3) (sin.f64 x))
61.2b
(+.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
42.1b
(-.f64 (fma.f64 (*.f64 (cos.f64 x) (sqrt.f64 (sin.f64 eps))) (sqrt.f64 (sin.f64 eps)) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x))
56.5b
(*.f64 (-.f64 (pow.f64 (*.f64 eps (cos.f64 x)) 2) (*.f64 1/4 (pow.f64 (*.f64 eps (sqrt.f64 (sin.f64 x))) 4))) (/.f64 1 (fma.f64 eps (cos.f64 x) (*.f64 1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))
43.0b
(fma.f64 (*.f64 eps (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))
36.2b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2)
1.3b
(fma.f64 (*.f64 (cos.f64 x) (pow.f64 (cbrt.f64 (sin.f64 eps)) 2)) (cbrt.f64 (sin.f64 eps)) (fma.f64 (sin.f64 x) (cos.f64 eps) (neg.f64 (sin.f64 x))))
30.0b
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
35.7b
(fma.f64 (*.f64 eps (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))
28.9b
(sin.f64 eps)
20.0b
(fma.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 2) (*.f64 (cbrt.f64 (sin.f64 x)) (cos.f64 eps)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))
19.7b
(fma.f64 (sin.f64 x) (cos.f64 eps) (log1p.f64 (expm1.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))))))
35.3b
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps -1/2))))
31.9b
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)))
37.0b
(fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (sin.f64 eps) x))
37.0b
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x))
36.2b
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3)
14.2b
(fma.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) 2)) (cbrt.f64 (*.f64 (cos.f64 x) (sin.f64 eps))) (fma.f64 (sin.f64 x) (cos.f64 eps) (neg.f64 (sin.f64 x))))
35.5b
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) eps)))
19.6b
(-.f64 (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x))
36.5b
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
35.5b
(fma.f64 (sin.f64 x) (*.f64 eps (*.f64 eps -1/2)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))
50.2b
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x)))))
54.0b
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3))
35.9b
(-.f64 (sin.f64 eps) (sin.f64 x))
19.6b
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (*.f64 (cbrt.f64 (cos.f64 eps)) (sin.f64 x)) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))
19.6b
(+.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (sin.f64 x) (cos.f64 eps)))
42.4b
(log.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))
48.3b
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) eps)) 2)
26.5b
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 x) (cos.f64 eps)))) (exp.f64 (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))))
0.3b
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
61.3b
0
35.5b
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) eps)) 3)
42.6b
(-.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x))
19.6b
(-.f64 (fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (sin.f64 x) (cos.f64 eps))) (sin.f64 x))
48.4b
(sqrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 2))
47.9b
eps
35.5b
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
34.3b
(-.f64 (+.f64 (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x))
57.6b
(pow.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3) 1/3)
48.0b
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (sin.f64 x))
36.0b
(expm1.f64 (log1p.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))
0.2b
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
39.0b
(cbrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 3))
19.6b
(+.f64 (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) (*.f64 (sin.f64 x) (cos.f64 eps)))
19.5b
(fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))))
60.7b
(-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1)
35.4b
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 0 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2))))
36.9b
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x))
0.6b
(fma.f64 (pow.f64 (cbrt.f64 (cos.f64 x)) 2) (*.f64 (cbrt.f64 (cos.f64 x)) (sin.f64 eps)) (fma.f64 (sin.f64 x) (cos.f64 eps) (neg.f64 (sin.f64 x))))
Compiler

Compiled 1642 to 1094 computations (33.4% saved)

localize103.0ms (0.7%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
0.1b
(*.f64 (sin.f64 eps) (cos.f64 x))
1.4b
(+.f64 (cos.f64 eps) -1)
Compiler

Compiled 34 to 13 computations (61.8% saved)

series9.0ms (0.1%)

Counts
3 → 60
Calls

15 calls:

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

rewrite118.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
530×log-prod_binary64
504×prod-diff_binary64
332×pow-prod-down_binary64
314×pow2_binary64
231×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify87.0ms (0.6%)

Algorithm
egg-herbie
Rules
587×unswap-sqr_binary64
499×fma-def_binary64
391×fma-neg_binary64
378×distribute-lft-in_binary64
373×distribute-rgt-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
087904
1244890
2682841
32362837
44294837
56723837
Stop Event
node limit
Counts
150 → 129
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 (cos.f64 x) eps)
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 7) (cos.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(sin.f64 eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 x 4) (sin.f64 eps))) (sin.f64 eps)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 x 4) (sin.f64 eps))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 x 6) (sin.f64 eps))) (sin.f64 eps))))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) eps)
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(sin.f64 eps)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (sin.f64 eps))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.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 (*.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/24 (pow.f64 eps 4) (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) (*.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/720 (pow.f64 eps 6) (fma.f64 1/40320 (pow.f64 eps 8) (*.f64 -1/2 (*.f64 eps eps)))))
(fma.f64 1/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) (fma.f64 -1/2 (*.f64 eps eps) (*.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 (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 x) eps)
(*.f64 eps (cos.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))
(fma.f64 (cos.f64 x) eps (*.f64 (*.f64 -1/6 (pow.f64 eps 3)) (cos.f64 x)))
(*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))
(*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))))
(fma.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 eps 5)) (fma.f64 (cos.f64 x) eps (*.f64 (*.f64 -1/6 (pow.f64 eps 3)) (cos.f64 x))))
(fma.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 eps 5)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))
(*.f64 (cos.f64 x) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (fma.f64 1/120 (pow.f64 eps 5) eps)))
(*.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (pow.f64 eps 5)) (fma.f64 -1/6 (pow.f64 eps 3) eps)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 eps 5) (cos.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 eps 7) (cos.f64 x))) (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))))))
(fma.f64 1/120 (*.f64 (cos.f64 x) (pow.f64 eps 5)) (fma.f64 (cos.f64 x) eps (fma.f64 -1/5040 (*.f64 (cos.f64 x) (pow.f64 eps 7)) (*.f64 (*.f64 -1/6 (pow.f64 eps 3)) (cos.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 -1/5040 (pow.f64 eps 7)))) (*.f64 (cos.f64 x) (+.f64 (*.f64 1/120 (pow.f64 eps 5)) eps)))
(*.f64 (cos.f64 x) (+.f64 (fma.f64 -1/5040 (pow.f64 eps 7) (*.f64 -1/6 (pow.f64 eps 3))) (fma.f64 1/120 (pow.f64 eps 5) eps)))
(*.f64 (cos.f64 x) (+.f64 (fma.f64 1/120 (pow.f64 eps 5) eps) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 -1/5040 (pow.f64 eps 7)))))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(sin.f64 eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (sin.f64 eps))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (sin.f64 eps))
(fma.f64 (*.f64 -1/2 (*.f64 x x)) (sin.f64 eps) (sin.f64 eps))
(*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 x 4) (sin.f64 eps))) (sin.f64 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 1/24 (*.f64 (sin.f64 eps) (pow.f64 x 4)) (sin.f64 eps)))
(+.f64 (sin.f64 eps) (*.f64 (sin.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 x x)) (*.f64 1/24 (pow.f64 x 4)))))
(*.f64 (sin.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 x x)) (fma.f64 1/24 (pow.f64 x 4) 1)))
(fma.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))) (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 x 4) (sin.f64 eps))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 x 6) (sin.f64 eps))) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 1/24 (*.f64 (sin.f64 eps) (pow.f64 x 4)) (fma.f64 -1/720 (*.f64 (sin.f64 eps) (pow.f64 x 6)) (sin.f64 eps))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/720 (pow.f64 x 6)) 1) (sin.f64 eps)) (*.f64 (sin.f64 eps) (+.f64 (*.f64 -1/2 (*.f64 x x)) (*.f64 1/24 (pow.f64 x 4)))))
(fma.f64 (sin.f64 eps) (fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/720 (pow.f64 x 6))) (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)))
(*.f64 (sin.f64 eps) (+.f64 (fma.f64 -1/720 (pow.f64 x 6) 1) (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4)))))
(*.f64 (sin.f64 eps) (+.f64 (fma.f64 -1/2 (*.f64 x x) 1) (fma.f64 1/24 (pow.f64 x 4) (*.f64 -1/720 (pow.f64 x 6)))))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) (sin.f64 eps))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 (cos.f64 x) eps (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x)))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 (sin.f64 x) (*.f64 -1/2 eps)) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 eps))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps)))
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)) (*.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps)))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x)) (fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x)))))
(fma.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x)) (+.f64 (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))) (*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))))
(fma.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps) (*.f64 (sin.f64 x) (fma.f64 1/24 (pow.f64 eps 4) (*.f64 -1/2 (*.f64 eps eps)))))
(fma.f64 (cos.f64 x) (fma.f64 -1/6 (pow.f64 eps 3) eps) (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) (*.f64 1/24 (pow.f64 eps 4)))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))
(sin.f64 eps)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps)))
(fma.f64 (*.f64 -1/2 (*.f64 x x)) (sin.f64 eps) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps)))
(fma.f64 (+.f64 (cos.f64 eps) -1) x (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)))
(fma.f64 (cos.f64 eps) x (-.f64 (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)) x))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 -1/6 (*.f64 (-.f64 (cos.f64 eps) 1) (pow.f64 x 3))) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 -1/6 (*.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 x 3)) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 x (*.f64 x (sin.f64 eps))) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 -1/6 (*.f64 (+.f64 (cos.f64 eps) -1) (pow.f64 x 3)) (sin.f64 eps))))
(+.f64 (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)) (*.f64 (+.f64 (cos.f64 eps) -1) (+.f64 x (*.f64 -1/6 (pow.f64 x 3)))))
(+.f64 (*.f64 (sin.f64 eps) (fma.f64 -1/2 (*.f64 x x) 1)) (*.f64 (+.f64 (cos.f64 eps) -1) (-.f64 x (*.f64 (pow.f64 x 3) 1/6))))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))
(+.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (*.f64 (sin.f64 x) (-.f64 (cos.f64 eps) 1)))
(fma.f64 (cos.f64 x) (sin.f64 eps) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps)))

localize49.0ms (0.3%)

Local error

Found 2 expressions with local error:

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

Compiled 40 to 18 computations (55% saved)

series8.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

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

rewrite89.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
559×log-prod_binary64
465×fma-def_binary64
418×pow-prod-down_binary64
276×pow2_binary64
222×pow-unpow_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify77.0ms (0.5%)

Algorithm
egg-herbie
Rules
785×fma-neg_binary64
492×associate-*l*_binary64
436×distribute-rgt-out--_binary64
399×unsub-neg_binary64
371×cancel-sign-sub-inv_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
028850
177763
2173698
3567593
42579593
56692593
Stop Event
node limit
Counts
147 → 115
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)))
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)))
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1 (*.f64 eps (-.f64 (*.f64 1/2 (pow.f64 x 2)) 1))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1 (*.f64 eps (-.f64 (*.f64 1/2 (pow.f64 x 2)) 1))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1 (*.f64 eps (-.f64 (*.f64 1/2 (pow.f64 x 2)) 1))))
eps
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
Outputs
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))
(*.f64 -1/2 (*.f64 eps (*.f64 x x)))
(*.f64 x (*.f64 eps (*.f64 -1/2 x)))
(*.f64 eps (*.f64 -1/2 (*.f64 x x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))
(*.f64 -1/2 (*.f64 x (*.f64 eps eps)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps x)))
(*.f64 (*.f64 eps eps) (*.f64 -1/2 x))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))
(*.f64 -1/2 (*.f64 x (*.f64 eps eps)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps x)))
(*.f64 (*.f64 eps eps) (*.f64 -1/2 x))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))
(*.f64 -1/2 (*.f64 x (*.f64 eps eps)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps x)))
(*.f64 (*.f64 eps eps) (*.f64 -1/2 x))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))
(*.f64 -1/2 (*.f64 eps (*.f64 x x)))
(*.f64 x (*.f64 eps (*.f64 -1/2 x)))
(*.f64 eps (*.f64 -1/2 (*.f64 x x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))
(*.f64 -1/2 (*.f64 eps (*.f64 x x)))
(*.f64 x (*.f64 eps (*.f64 -1/2 x)))
(*.f64 eps (*.f64 -1/2 (*.f64 x x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2))))
(*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 x x)) eps)
(fma.f64 (*.f64 eps (*.f64 -1/2 x)) x eps)
(fma.f64 eps (*.f64 -1/2 (*.f64 x x)) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 x)) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))))
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps (+.f64 eps x))) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))))
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps (+.f64 eps x))) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))))
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps (+.f64 eps x))) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))) eps)
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))
(*.f64 -1/2 (*.f64 x (*.f64 eps eps)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps x)))
(*.f64 (*.f64 eps eps) (*.f64 -1/2 x))
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)))
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps (+.f64 eps x))) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))) eps)
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)))
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps (+.f64 eps x))) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))) eps)
(+.f64 (*.f64 eps (+.f64 1 (*.f64 -1/2 (pow.f64 x 2)))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)))
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps (+.f64 eps x))) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))) eps)
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))
(*.f64 -1/2 (*.f64 x (*.f64 eps eps)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps x)))
(*.f64 (*.f64 eps eps) (*.f64 -1/2 x))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1 (*.f64 eps (-.f64 (*.f64 1/2 (pow.f64 x 2)) 1))))
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps (+.f64 eps x))) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1 (*.f64 eps (-.f64 (*.f64 1/2 (pow.f64 x 2)) 1))))
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps (+.f64 eps x))) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1 (*.f64 eps (-.f64 (*.f64 1/2 (pow.f64 x 2)) 1))))
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps (+.f64 eps x))) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))) eps)
eps
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) eps)
(fma.f64 (*.f64 (*.f64 -1/2 eps) eps) x eps)
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps (+.f64 eps x))) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps (+.f64 eps x))) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))) eps)
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))
(*.f64 -1/2 (*.f64 eps (*.f64 x x)))
(*.f64 x (*.f64 eps (*.f64 -1/2 x)))
(*.f64 eps (*.f64 -1/2 (*.f64 x x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps (+.f64 eps x))) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps (+.f64 eps x))) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))) eps)
(*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))
(*.f64 -1/2 (*.f64 eps (*.f64 x x)))
(*.f64 x (*.f64 eps (*.f64 -1/2 x)))
(*.f64 eps (*.f64 -1/2 (*.f64 x x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(*.f64 -1/2 (+.f64 (*.f64 x (*.f64 eps eps)) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x))))
(*.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))))
(*.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 eps x)))
(*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps (+.f64 eps x))) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(fma.f64 -1/2 (*.f64 x (*.f64 eps eps)) (*.f64 eps (+.f64 1 (*.f64 -1/2 (*.f64 x x)))))
(+.f64 eps (*.f64 -1/2 (fma.f64 x (*.f64 eps eps) (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (+.f64 (*.f64 x x) (*.f64 eps x))) eps)
(fma.f64 -1/2 (*.f64 x (*.f64 eps (+.f64 eps x))) eps)
(fma.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x))) eps)

localize26.0ms (0.2%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
1.2b
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
Compiler

Compiled 22 to 6 computations (72.7% saved)

series5.0ms (0%)

Counts
2 → 48
Calls

12 calls:

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

rewrite78.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
833×pow1_binary64
770×add-log-exp_binary64
770×log1p-expm1-u_binary64
770×expm1-log1p-u_binary64
752×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify71.0ms (0.5%)

Algorithm
egg-herbie
Rules
803×unswap-sqr_binary64
517×fma-def_binary64
423×distribute-rgt-out_binary64
350×*-commutative_binary64
323×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
044495
1119493
2276489
3752480
42312480
54008480
66069480
Stop Event
node limit
Counts
106 → 82
Calls
Call 1
Inputs
eps
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) x)) (*.f64 -1/6 (pow.f64 eps 3)))))
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(sin.f64 eps)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(*.f64 (-.f64 (cos.f64 eps) 1) x)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 (cos.f64 eps))) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 (cos.f64 eps))) x)) (sin.f64 eps))
(+.f64 (*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 (cos.f64 eps))) x)) (sin.f64 eps))
(+.f64 (*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 (cos.f64 eps))) x)) (sin.f64 eps))
x
(+.f64 eps x)
(+.f64 eps (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) x))
(+.f64 eps (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) x)))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(sin.f64 eps)
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(*.f64 (cos.f64 eps) x)
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(*.f64 (cos.f64 eps) x)
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
Outputs
eps
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) eps)
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) eps)
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) eps)
(fma.f64 eps (*.f64 eps (*.f64 -1/2 x)) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (fma.f64 -1/6 (pow.f64 eps 3) eps))
(fma.f64 (*.f64 eps eps) (fma.f64 eps -1/6 (*.f64 -1/2 x)) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) x)) (*.f64 -1/6 (pow.f64 eps 3)))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) eps) (fma.f64 1/24 (*.f64 x (pow.f64 eps 4)) (*.f64 -1/6 (pow.f64 eps 3))))
(+.f64 (fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) eps) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 x (*.f64 1/24 (pow.f64 eps 4)))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (fma.f64 x (*.f64 1/24 (pow.f64 eps 4)) (fma.f64 -1/6 (pow.f64 eps 3) eps)))
(fma.f64 (*.f64 eps eps) (fma.f64 eps -1/6 (*.f64 -1/2 x)) (fma.f64 x (*.f64 1/24 (pow.f64 eps 4)) eps))
(fma.f64 (*.f64 eps eps) (fma.f64 eps -1/6 (*.f64 -1/2 x)) (fma.f64 1/24 (*.f64 x (pow.f64 eps 4)) eps))
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(sin.f64 eps)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(*.f64 (-.f64 (cos.f64 eps) 1) x)
(*.f64 x (+.f64 (cos.f64 eps) -1))
(-.f64 (*.f64 x (cos.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (neg.f64 x))
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 (cos.f64 eps))) x))
(*.f64 x (+.f64 (cos.f64 eps) -1))
(-.f64 (*.f64 x (cos.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (neg.f64 x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 (cos.f64 eps))) x)) (sin.f64 eps))
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 (cos.f64 eps))) x)) (sin.f64 eps))
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
(+.f64 (*.f64 -1 (*.f64 (+.f64 1 (*.f64 -1 (cos.f64 eps))) x)) (sin.f64 eps))
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (fma.f64 x (cos.f64 eps) (sin.f64 eps)) x)
(fma.f64 x (cos.f64 eps) (-.f64 (sin.f64 eps) x))
x
(+.f64 eps x)
(+.f64 eps (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) x))
(+.f64 eps (fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) x))
(+.f64 eps (fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) x))
(fma.f64 (fma.f64 -1/2 (*.f64 eps eps) 1) x eps)
(fma.f64 x (fma.f64 eps (*.f64 eps -1/2) 1) eps)
(+.f64 eps (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) x)))
(+.f64 eps (fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) (fma.f64 -1/6 (pow.f64 eps 3) x)))
(+.f64 eps (fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (fma.f64 -1/6 (pow.f64 eps 3) x)))
(+.f64 (fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) eps) (fma.f64 -1/6 (pow.f64 eps 3) x))
(+.f64 eps (fma.f64 (*.f64 eps eps) (fma.f64 eps -1/6 (*.f64 -1/2 x)) x))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(sin.f64 eps)
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(*.f64 (cos.f64 eps) x)
(*.f64 x (cos.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(*.f64 (cos.f64 eps) x)
(*.f64 x (cos.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(fma.f64 x (cos.f64 eps) (sin.f64 eps))

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2)) (sin.f64 x))
0.4b
(pow.f64 (sin.f64 (+.f64 x eps)) 2)
2.5b
(sqrt.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 2))
3.9b
(sin.f64 (+.f64 x eps))
Compiler

Compiled 37 to 15 computations (59.5% saved)

series10.0ms (0.1%)

Counts
3 → 72
Calls

18 calls:

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

rewrite84.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
468×log-prod_binary64
421×fma-def_binary64
309×pow-prod-down_binary64
281×pow2_binary64
228×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify63.0ms (0.4%)

Algorithm
egg-herbie
Rules
683×distribute-rgt-neg-out_binary64
648×fma-def_binary64
600×distribute-lft-neg-out_binary64
523×associate-*r*_binary64
506×associate-*l*_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0107986
1329973
2917935
34253935
Stop Event
node limit
Counts
262 → 241
Calls
Call 1
Inputs
(sin.f64 eps)
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (sin.f64 eps))))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 x)
(+.f64 (*.f64 (cos.f64 x) eps) (sin.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(pow.f64 (sin.f64 eps) 2)
(+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 2 (*.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x))))
(+.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (*.f64 2 (*.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x))) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 eps) 2)) (pow.f64 (cos.f64 eps) 2)) (pow.f64 x 2))))
(+.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (*.f64 2 (*.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (*.f64 (cos.f64 eps) (sin.f64 eps))) (*.f64 -1/3 (*.f64 (cos.f64 eps) (sin.f64 eps)))) (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 eps) 2)) (pow.f64 (cos.f64 eps) 2)) (pow.f64 x 2)))))
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 2)
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 2)
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 2)
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 2)
(pow.f64 (sin.f64 x) 2)
(+.f64 (pow.f64 (sin.f64 x) 2) (*.f64 2 (*.f64 eps (*.f64 (cos.f64 x) (sin.f64 x)))))
(+.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 x) 2)) (pow.f64 (cos.f64 x) 2))) (*.f64 2 (*.f64 eps (*.f64 (cos.f64 x) (sin.f64 x))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/3 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 -1 (*.f64 (cos.f64 x) (sin.f64 x)))) (pow.f64 eps 3)) (+.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 x) 2)) (pow.f64 (cos.f64 x) 2))) (*.f64 2 (*.f64 eps (*.f64 (cos.f64 x) (sin.f64 x)))))))
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 2)
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 2)
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 2)
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 2)
(sin.f64 eps)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps))))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(*.f64 (cos.f64 x) eps)
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
Outputs
(sin.f64 eps)
(+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps))
(fma.f64 (cos.f64 eps) x (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (sin.f64 eps)))
(fma.f64 (cos.f64 eps) x (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 eps)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (cos.f64 eps) x) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3))) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (fma.f64 -1/6 (*.f64 (cos.f64 eps) (pow.f64 x 3)) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (cos.f64 eps) x (fma.f64 (*.f64 (cos.f64 eps) -1/6) (pow.f64 x 3) (sin.f64 eps))))
(+.f64 (*.f64 (cos.f64 eps) (+.f64 (*.f64 -1/6 (pow.f64 x 3)) x)) (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 eps)))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 eps (*.f64 -1 x)))
(sin.f64 (+.f64 eps x))
(sin.f64 x)
(+.f64 (*.f64 (cos.f64 x) eps) (sin.f64 x))
(fma.f64 (cos.f64 x) eps (sin.f64 x))
(fma.f64 eps (cos.f64 x) (sin.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(+.f64 (fma.f64 (cos.f64 x) eps (sin.f64 x)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x)))
(fma.f64 eps (cos.f64 x) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 eps eps)) 1) (sin.f64 x)))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (sin.f64 x) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(+.f64 (fma.f64 (cos.f64 x) eps (sin.f64 x)) (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x))))
(+.f64 (sin.f64 x) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))))
(+.f64 (*.f64 (sin.f64 x) (fma.f64 -1/2 (*.f64 eps eps) 1)) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(sin.f64 (+.f64 eps x))
(sin.f64 (-.f64 x (*.f64 -1 eps)))
(sin.f64 (+.f64 eps x))
(pow.f64 (sin.f64 eps) 2)
(+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 2 (*.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x))))
(+.f64 (pow.f64 (sin.f64 eps) 2) (*.f64 (*.f64 2 (cos.f64 eps)) (*.f64 (sin.f64 eps) x)))
(fma.f64 2 (*.f64 (sin.f64 eps) (*.f64 (cos.f64 eps) x)) (pow.f64 (sin.f64 eps) 2))
(*.f64 (sin.f64 eps) (+.f64 (*.f64 (cos.f64 eps) (*.f64 x 2)) (sin.f64 eps)))
(*.f64 (sin.f64 eps) (+.f64 (sin.f64 eps) (*.f64 (cos.f64 eps) (*.f64 x 2))))
(+.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (*.f64 2 (*.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x))) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 eps) 2)) (pow.f64 (cos.f64 eps) 2)) (pow.f64 x 2))))
(+.f64 (pow.f64 (sin.f64 eps) 2) (fma.f64 2 (*.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x)) (*.f64 (*.f64 x x) (fma.f64 -1 (pow.f64 (sin.f64 eps) 2) (pow.f64 (cos.f64 eps) 2)))))
(+.f64 (pow.f64 (sin.f64 eps) 2) (fma.f64 2 (*.f64 (sin.f64 eps) (*.f64 (cos.f64 eps) x)) (*.f64 (*.f64 x x) (-.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (sin.f64 eps) 2)))))
(fma.f64 x (*.f64 x (-.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (sin.f64 eps) 2))) (*.f64 (sin.f64 eps) (+.f64 (*.f64 (cos.f64 eps) (*.f64 x 2)) (sin.f64 eps))))
(fma.f64 x (*.f64 x (-.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (sin.f64 eps) 2))) (*.f64 (sin.f64 eps) (+.f64 (sin.f64 eps) (*.f64 (cos.f64 eps) (*.f64 x 2)))))
(+.f64 (pow.f64 (sin.f64 eps) 2) (+.f64 (*.f64 2 (*.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x))) (+.f64 (*.f64 (+.f64 (*.f64 -1 (*.f64 (cos.f64 eps) (sin.f64 eps))) (*.f64 -1/3 (*.f64 (cos.f64 eps) (sin.f64 eps)))) (pow.f64 x 3)) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 eps) 2)) (pow.f64 (cos.f64 eps) 2)) (pow.f64 x 2)))))
(+.f64 (pow.f64 (sin.f64 eps) 2) (fma.f64 2 (*.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) x)) (fma.f64 (*.f64 (*.f64 (sin.f64 eps) (cos.f64 eps)) -4/3) (pow.f64 x 3) (*.f64 (*.f64 x x) (fma.f64 -1 (pow.f64 (sin.f64 eps) 2) (pow.f64 (cos.f64 eps) 2))))))
(+.f64 (pow.f64 (sin.f64 eps) 2) (fma.f64 2 (*.f64 (sin.f64 eps) (*.f64 (cos.f64 eps) x)) (fma.f64 (*.f64 x x) (-.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (sin.f64 eps) 2)) (*.f64 (pow.f64 x 3) (*.f64 (cos.f64 eps) (*.f64 (sin.f64 eps) -4/3))))))
(+.f64 (pow.f64 (sin.f64 eps) 2) (fma.f64 x (*.f64 x (-.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (sin.f64 eps) 2))) (*.f64 (*.f64 (sin.f64 eps) (cos.f64 eps)) (+.f64 (*.f64 x 2) (*.f64 (pow.f64 x 3) -4/3)))))
(+.f64 (*.f64 (*.f64 (sin.f64 eps) (cos.f64 eps)) (+.f64 (*.f64 x 2) (*.f64 (pow.f64 x 3) -4/3))) (fma.f64 (*.f64 x x) (-.f64 (pow.f64 (cos.f64 eps) 2) (pow.f64 (sin.f64 eps) 2)) (pow.f64 (sin.f64 eps) 2)))
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 x) 2)
(+.f64 (pow.f64 (sin.f64 x) 2) (*.f64 2 (*.f64 eps (*.f64 (cos.f64 x) (sin.f64 x)))))
(+.f64 (pow.f64 (sin.f64 x) 2) (*.f64 (*.f64 2 eps) (*.f64 (sin.f64 x) (cos.f64 x))))
(fma.f64 2 (*.f64 eps (*.f64 (sin.f64 x) (cos.f64 x))) (pow.f64 (sin.f64 x) 2))
(*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 2 (cos.f64 x))) (sin.f64 x)))
(*.f64 (sin.f64 x) (+.f64 (sin.f64 x) (*.f64 eps (*.f64 2 (cos.f64 x)))))
(+.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 x) 2)) (pow.f64 (cos.f64 x) 2))) (*.f64 2 (*.f64 eps (*.f64 (cos.f64 x) (sin.f64 x))))))
(+.f64 (pow.f64 (sin.f64 x) 2) (fma.f64 (*.f64 eps eps) (fma.f64 -1 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 2)) (*.f64 (*.f64 2 eps) (*.f64 (sin.f64 x) (cos.f64 x)))))
(+.f64 (pow.f64 (sin.f64 x) 2) (fma.f64 2 (*.f64 eps (*.f64 (sin.f64 x) (cos.f64 x))) (*.f64 (*.f64 eps eps) (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2)))))
(fma.f64 eps (*.f64 eps (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 2 (cos.f64 x))) (sin.f64 x))))
(fma.f64 eps (*.f64 eps (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))) (*.f64 (sin.f64 x) (+.f64 (sin.f64 x) (*.f64 eps (*.f64 2 (cos.f64 x))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/3 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 -1 (*.f64 (cos.f64 x) (sin.f64 x)))) (pow.f64 eps 3)) (+.f64 (pow.f64 (sin.f64 x) 2) (+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 x) 2)) (pow.f64 (cos.f64 x) 2))) (*.f64 2 (*.f64 eps (*.f64 (cos.f64 x) (sin.f64 x)))))))
(fma.f64 (*.f64 (*.f64 (sin.f64 x) (cos.f64 x)) -4/3) (pow.f64 eps 3) (+.f64 (pow.f64 (sin.f64 x) 2) (fma.f64 (*.f64 eps eps) (fma.f64 -1 (pow.f64 (sin.f64 x) 2) (pow.f64 (cos.f64 x) 2)) (*.f64 (*.f64 2 eps) (*.f64 (sin.f64 x) (cos.f64 x))))))
(+.f64 (fma.f64 2 (*.f64 eps (*.f64 (sin.f64 x) (cos.f64 x))) (*.f64 (*.f64 eps eps) (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2)))) (fma.f64 (pow.f64 eps 3) (*.f64 (sin.f64 x) (*.f64 (cos.f64 x) -4/3)) (pow.f64 (sin.f64 x) 2)))
(+.f64 (fma.f64 eps (*.f64 eps (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2))) (pow.f64 (sin.f64 x) 2)) (*.f64 (*.f64 (sin.f64 x) (cos.f64 x)) (+.f64 (*.f64 eps 2) (*.f64 (pow.f64 eps 3) -4/3))))
(+.f64 (fma.f64 (*.f64 eps eps) (-.f64 (pow.f64 (cos.f64 x) 2) (pow.f64 (sin.f64 x) 2)) (pow.f64 (sin.f64 x) 2)) (*.f64 (*.f64 (sin.f64 x) (cos.f64 x)) (+.f64 (*.f64 eps 2) (*.f64 (pow.f64 eps 3) -4/3))))
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(pow.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) 2)
(pow.f64 (sin.f64 (+.f64 eps x)) 2)
(sin.f64 eps)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))
(fma.f64 x (+.f64 (cos.f64 eps) -1) (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 x (+.f64 (cos.f64 eps) -1) (sin.f64 eps)))
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 x (+.f64 (cos.f64 eps) -1) (sin.f64 eps)))
(-.f64 (fma.f64 (cos.f64 eps) x (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 eps))) x)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 -1/6 (cos.f64 eps) 1/6) (pow.f64 x 3) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 x (+.f64 (cos.f64 eps) -1) (fma.f64 (pow.f64 x 3) (fma.f64 (cos.f64 eps) -1/6 1/6) (sin.f64 eps))))
(fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 x (+.f64 (cos.f64 eps) -1) (fma.f64 (pow.f64 x 3) (fma.f64 (cos.f64 eps) -1/6 1/6) (sin.f64 eps))))
(fma.f64 x (+.f64 (cos.f64 eps) -1) (fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 (pow.f64 x 3) (fma.f64 (cos.f64 eps) -1/6 1/6) (sin.f64 eps))))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 (cos.f64 x) eps (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x)))
(fma.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)) (*.f64 eps (cos.f64 x)))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(fma.f64 eps (cos.f64 x) (*.f64 eps (*.f64 eps (*.f64 -1/2 (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x)))))
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))))
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4)))))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))

localize68.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(*.f64 eps (sqrt.f64 (cos.f64 x)))
0.1b
(sqrt.f64 (cos.f64 x))
0.1b
(fma.f64 (*.f64 eps (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))
3.6b
(*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2))
Compiler

Compiled 49 to 17 computations (65.3% saved)

series21.0ms (0.1%)

Counts
4 → 72
Calls

21 calls:

TimeVariablePointExpression
9.0ms
x
@inf
(fma.f64 (*.f64 eps (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))
4.0ms
x
@-inf
(*.f64 eps (sqrt.f64 (cos.f64 x)))
1.0ms
x
@-inf
(fma.f64 (*.f64 eps (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))
1.0ms
eps
@0
(fma.f64 (*.f64 eps (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))
0.0ms
eps
@-inf
(fma.f64 (*.f64 eps (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))

rewrite93.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
598×log-prod_binary64
415×pow-prod-down_binary64
305×pow2_binary64
294×prod-diff_binary64
233×pow-unpow_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

simplify218.0ms (1.5%)

Algorithm
egg-herbie
Rules
833×distribute-lft-out_binary64
684×*-commutative_binary64
502×sqr-pow_binary64
413×fma-def_binary64
404×distribute-rgt-out_binary64
Iterations

Useful iterations: 7 (0.0ms)

IterNodesCost
0741015
11951009
2536983
31952943
43757943
54025943
64255943
74531942
84943942
95256942
106868942
117268942
127742942
Stop Event
node limit
Counts
174 → 139
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 -1/240 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 -1/240 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (+.f64 (*.f64 1/10080 (*.f64 (pow.f64 eps 2) (pow.f64 x 7))) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 (cos.f64 x) eps)
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
eps
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
1
(+.f64 1 (*.f64 -1/4 (pow.f64 x 2)))
(+.f64 1 (+.f64 (*.f64 -1/4 (pow.f64 x 2)) (*.f64 -1/96 (pow.f64 x 4))))
(+.f64 1 (+.f64 (*.f64 -1/4 (pow.f64 x 2)) (+.f64 (*.f64 -1/96 (pow.f64 x 4)) (*.f64 -19/5760 (pow.f64 x 6)))))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
eps
(+.f64 eps (*.f64 -1/4 (*.f64 eps (pow.f64 x 2))))
(+.f64 eps (+.f64 (*.f64 -1/96 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/4 (*.f64 eps (pow.f64 x 2)))))
(+.f64 (*.f64 -19/5760 (*.f64 eps (pow.f64 x 6))) (+.f64 eps (+.f64 (*.f64 -1/96 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/4 (*.f64 eps (pow.f64 x 2))))))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
Outputs
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) x))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) x))
(*.f64 -1/2 (*.f64 eps (*.f64 eps x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))))
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) (*.f64 1/12 (*.f64 (*.f64 eps eps) (pow.f64 x 3))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (*.f64 (pow.f64 x 3) (*.f64 (*.f64 eps eps) 1/12)))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 1/12 (pow.f64 x 3)) (*.f64 -1/2 x)))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (*.f64 1/12 (pow.f64 x 3))))
(*.f64 eps (*.f64 eps (+.f64 (*.f64 -1/2 x) (*.f64 1/12 (pow.f64 x 3)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 -1/240 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3)))))
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) (fma.f64 -1/240 (*.f64 (*.f64 eps eps) (pow.f64 x 5)) (*.f64 1/12 (*.f64 (*.f64 eps eps) (pow.f64 x 3)))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (fma.f64 -1/240 (*.f64 eps (*.f64 eps (pow.f64 x 5))) (*.f64 (pow.f64 x 3) (*.f64 (*.f64 eps eps) 1/12))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 1/12 (pow.f64 x 3)) (*.f64 -1/240 (pow.f64 x 5)))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (+.f64 (*.f64 -1/240 (pow.f64 x 5)) (*.f64 1/12 (pow.f64 x 3)))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/240 (pow.f64 x 5)) (+.f64 (*.f64 -1/2 x) (*.f64 1/12 (pow.f64 x 3)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 -1/240 (*.f64 (pow.f64 eps 2) (pow.f64 x 5))) (+.f64 (*.f64 1/10080 (*.f64 (pow.f64 eps 2) (pow.f64 x 7))) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))))))
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) (fma.f64 -1/240 (*.f64 (*.f64 eps eps) (pow.f64 x 5)) (fma.f64 1/10080 (*.f64 (*.f64 eps eps) (pow.f64 x 7)) (*.f64 1/12 (*.f64 (*.f64 eps eps) (pow.f64 x 3))))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (fma.f64 -1/240 (*.f64 eps (*.f64 eps (pow.f64 x 5))) (fma.f64 1/10080 (*.f64 eps (*.f64 eps (pow.f64 x 7))) (*.f64 (pow.f64 x 3) (*.f64 (*.f64 eps eps) 1/12)))))
(+.f64 (*.f64 (*.f64 eps eps) (+.f64 (*.f64 1/12 (pow.f64 x 3)) (*.f64 -1/2 x))) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/240 (pow.f64 x 5)) (*.f64 1/10080 (pow.f64 x 7)))))
(*.f64 (*.f64 eps eps) (+.f64 (+.f64 (*.f64 -1/2 x) (*.f64 1/12 (pow.f64 x 3))) (+.f64 (*.f64 1/10080 (pow.f64 x 7)) (*.f64 -1/240 (pow.f64 x 5)))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (+.f64 (*.f64 1/10080 (pow.f64 x 7)) (+.f64 (*.f64 -1/240 (pow.f64 x 5)) (*.f64 1/12 (pow.f64 x 3))))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 (*.f64 -1/2 eps) (*.f64 eps (sin.f64 x)))
(*.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
eps
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) eps)
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) eps)
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) eps)
(fma.f64 (*.f64 eps eps) (*.f64 -1/2 x) eps)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) (+.f64 eps (*.f64 -1/2 (*.f64 eps (*.f64 x x)))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (fma.f64 -1/2 (*.f64 eps (*.f64 x x)) eps))
(+.f64 eps (*.f64 (*.f64 -1/2 (*.f64 eps x)) (+.f64 eps x)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))))))
(+.f64 (fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) eps) (fma.f64 -1/2 (*.f64 eps (*.f64 x x)) (*.f64 1/12 (*.f64 (*.f64 eps eps) (pow.f64 x 3)))))
(+.f64 (fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) eps) (fma.f64 -1/2 (*.f64 eps (*.f64 x x)) (*.f64 (pow.f64 x 3) (*.f64 (*.f64 eps eps) 1/12))))
(+.f64 (*.f64 (*.f64 eps eps) (+.f64 (*.f64 1/12 (pow.f64 x 3)) (*.f64 -1/2 x))) (fma.f64 -1/2 (*.f64 eps (*.f64 x x)) eps))
(+.f64 (*.f64 (*.f64 -1/2 (*.f64 eps x)) (+.f64 eps x)) (fma.f64 (*.f64 eps eps) (*.f64 1/12 (pow.f64 x 3)) eps))
(+.f64 eps (*.f64 eps (+.f64 (*.f64 eps (*.f64 1/12 (pow.f64 x 3))) (*.f64 (*.f64 -1/2 x) (+.f64 eps x)))))
(+.f64 eps (*.f64 eps (+.f64 (*.f64 (pow.f64 x 3) (*.f64 eps 1/12)) (*.f64 (*.f64 -1/2 x) (+.f64 eps x)))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 eps (cos.f64 x)) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (*.f64 -1/2 (*.f64 eps (sin.f64 x))) (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
1
(+.f64 1 (*.f64 -1/4 (pow.f64 x 2)))
(+.f64 1 (*.f64 (*.f64 x x) -1/4))
(fma.f64 (*.f64 x x) -1/4 1)
(fma.f64 x (*.f64 x -1/4) 1)
(+.f64 1 (+.f64 (*.f64 -1/4 (pow.f64 x 2)) (*.f64 -1/96 (pow.f64 x 4))))
(+.f64 1 (fma.f64 -1/4 (*.f64 x x) (*.f64 -1/96 (pow.f64 x 4))))
(+.f64 (fma.f64 (*.f64 x x) -1/4 1) (*.f64 -1/96 (pow.f64 x 4)))
(fma.f64 x (*.f64 x -1/4) (fma.f64 -1/96 (pow.f64 x 4) 1))
(+.f64 1 (+.f64 (*.f64 -1/4 (pow.f64 x 2)) (+.f64 (*.f64 -1/96 (pow.f64 x 4)) (*.f64 -19/5760 (pow.f64 x 6)))))
(+.f64 1 (fma.f64 -1/4 (*.f64 x x) (fma.f64 -1/96 (pow.f64 x 4) (*.f64 -19/5760 (pow.f64 x 6)))))
(+.f64 (fma.f64 (*.f64 x x) -1/4 1) (fma.f64 -19/5760 (pow.f64 x 6) (*.f64 -1/96 (pow.f64 x 4))))
(+.f64 1 (fma.f64 -1/96 (pow.f64 x 4) (fma.f64 -19/5760 (pow.f64 x 6) (*.f64 (*.f64 x x) -1/4))))
(+.f64 1 (fma.f64 x (*.f64 x -1/4) (fma.f64 -1/96 (pow.f64 x 4) (*.f64 -19/5760 (pow.f64 x 6)))))
(+.f64 1 (fma.f64 -1/96 (pow.f64 x 4) (fma.f64 x (*.f64 x -1/4) (*.f64 -19/5760 (pow.f64 x 6)))))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))
eps
(+.f64 eps (*.f64 -1/4 (*.f64 eps (pow.f64 x 2))))
(+.f64 eps (*.f64 (*.f64 eps (*.f64 x x)) -1/4))
(fma.f64 (*.f64 eps -1/4) (*.f64 x x) eps)
(fma.f64 eps (*.f64 (*.f64 x x) -1/4) eps)
(fma.f64 (*.f64 eps (*.f64 x x)) -1/4 eps)
(*.f64 eps (fma.f64 x (*.f64 x -1/4) 1))
(+.f64 eps (+.f64 (*.f64 -1/96 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/4 (*.f64 eps (pow.f64 x 2)))))
(+.f64 eps (fma.f64 -1/96 (*.f64 eps (pow.f64 x 4)) (*.f64 (*.f64 eps (*.f64 x x)) -1/4)))
(+.f64 (fma.f64 (*.f64 eps -1/4) (*.f64 x x) eps) (*.f64 (pow.f64 x 4) (*.f64 eps -1/96)))
(+.f64 eps (*.f64 eps (fma.f64 -1/96 (pow.f64 x 4) (*.f64 (*.f64 x x) -1/4))))
(*.f64 eps (fma.f64 x (*.f64 x -1/4) (fma.f64 -1/96 (pow.f64 x 4) 1)))
(+.f64 (*.f64 -19/5760 (*.f64 eps (pow.f64 x 6))) (+.f64 eps (+.f64 (*.f64 -1/96 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/4 (*.f64 eps (pow.f64 x 2))))))
(fma.f64 -19/5760 (*.f64 eps (pow.f64 x 6)) (+.f64 eps (fma.f64 -1/96 (*.f64 eps (pow.f64 x 4)) (*.f64 (*.f64 eps (*.f64 x x)) -1/4))))
(fma.f64 -19/5760 (*.f64 eps (pow.f64 x 6)) (+.f64 (fma.f64 (*.f64 eps -1/4) (*.f64 x x) eps) (*.f64 (pow.f64 x 4) (*.f64 eps -1/96))))
(+.f64 (*.f64 eps (fma.f64 -1/96 (pow.f64 x 4) (*.f64 (*.f64 x x) -1/4))) (*.f64 (fma.f64 -19/5760 (pow.f64 x 6) 1) eps))
(+.f64 eps (*.f64 eps (fma.f64 x (*.f64 x -1/4) (fma.f64 -1/96 (pow.f64 x 4) (*.f64 -19/5760 (pow.f64 x 6))))))
(+.f64 eps (*.f64 eps (fma.f64 -1/96 (pow.f64 x 4) (fma.f64 x (*.f64 x -1/4) (*.f64 -19/5760 (pow.f64 x 6))))))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))
(*.f64 (sqrt.f64 (cos.f64 x)) eps)
(*.f64 eps (sqrt.f64 (cos.f64 x)))

eval302.0ms (2.1%)

Compiler

Compiled 14423 to 5810 computations (59.7% saved)

prune204.0ms (1.4%)

Pruning

61 alts after pruning (55 fresh and 6 done)

PrunedKeptTotal
New77829807
Fresh242650
Picked011
Done358
Total80561866
Error
0.0b
Counts
866 → 61
Alt Table
Click to see full alt table
StatusErrorProgram
19.5b
(fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))
61.1b
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 3) (sin.f64 x))
47.9b
eps
51.1b
(-.f64 (pow.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 6) 1/6) (sin.f64 x))
34.9b
(*.f64 (cos.f64 x) eps)
59.1b
(fma.f64 (sin.f64 x) (cos.f64 eps) (neg.f64 (sin.f64 x)))
35.7b
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
50.1b
(fma.f64 (*.f64 (cos.f64 x) (sqrt.f64 eps)) (sqrt.f64 eps) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))
26.4b
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (log.f64 (pow.f64 (exp.f64 (cos.f64 x)) (sin.f64 eps))))
0.3b
(fma.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (cbrt.f64 (cos.f64 eps)) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
35.8b
(log1p.f64 (expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))
36.4b
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 eps)) 3) (sin.f64 x))
61.2b
(+.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
18.8b
(cbrt.f64 (pow.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))) 3))
36.5b
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
56.5b
(*.f64 (-.f64 (pow.f64 (*.f64 eps (cos.f64 x)) 2) (*.f64 1/4 (pow.f64 (*.f64 eps (sqrt.f64 (sin.f64 x))) 4))) (/.f64 1 (fma.f64 eps (cos.f64 x) (*.f64 1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))
43.0b
(fma.f64 (*.f64 eps (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))
45.2b
(fma.f64 (*.f64 eps (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)) (*.f64 -1/2 (*.f64 eps (*.f64 eps x))))
61.2b
(-.f64 (*.f64 (cos.f64 eps) x) x)
37.2b
(-.f64 (fma.f64 (cos.f64 eps) x (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 eps))) x)
36.2b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2)
50.1b
(+.f64 eps (*.f64 (*.f64 -1/2 (*.f64 eps x)) (+.f64 eps x)))
35.7b
(fma.f64 (*.f64 eps (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2)))
28.9b
(sin.f64 eps)
35.3b
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps -1/2))))
37.0b
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x))
36.2b
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3)
48.3b
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 eps) 2)) (sin.f64 x))
35.5b
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) eps)))
48.9b
(+.f64 eps (*.f64 (*.f64 eps eps) (*.f64 -1/2 x)))
19.6b
(-.f64 (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x))
54.0b
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3))
30.6b
(pow.f64 (sqrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) 2)
1.4b
(pow.f64 (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) 3)
19.6b
(+.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (sin.f64 x) (cos.f64 eps)))
35.5b
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
35.9b
(-.f64 (sin.f64 eps) (sin.f64 x))
54.4b
(-.f64 (+.f64 eps x) x)
0.3b
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x)))
0.3b
(fma.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 -1 (cos.f64 eps))) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
28.0b
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (sin.f64 eps))
48.3b
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) eps)) 2)
50.0b
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 x))))
32.4b
(fma.f64 (*.f64 -1/2 (*.f64 eps eps)) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
48.4b
(sqrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 2))
61.3b
0
35.5b
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) eps)) 3)
42.6b
(-.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x))
47.2b
(-.f64 (fabs.f64 (sin.f64 (+.f64 x eps))) (sin.f64 x))
0.3b
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
0.3b
(fma.f64 (log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1))) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
49.2b
(*.f64 (cbrt.f64 (fma.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2) (*.f64 eps (cos.f64 x)))) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2) (*.f64 eps (cos.f64 x))) 2)))
34.3b
(-.f64 (+.f64 (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x))
60.3b
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 x) 2)) (sin.f64 x))
61.2b
(*.f64 (-.f64 (cos.f64 eps) 1) x)
0.2b
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
19.6b
(+.f64 (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) (*.f64 (sin.f64 x) (cos.f64 eps)))
19.5b
(fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))))
60.7b
(-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1)
18.8b
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) 3)))
35.3b
(+.f64 (*.f64 eps (*.f64 eps (*.f64 (sin.f64 x) -1/2))) (*.f64 eps (cos.f64 x)))
Compiler

Compiled 1567 to 1077 computations (31.3% saved)

localize27.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (sin.f64 eps) (cos.f64 x))
0.1b
(exp.f64 (+.f64 (cos.f64 eps) -1))
1.4b
(+.f64 (cos.f64 eps) -1)
1.4b
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
Compiler

Compiled 47 to 22 computations (53.2% saved)

series2.0ms (0%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
eps
@0
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
0.0ms
eps
@0
(exp.f64 (+.f64 (cos.f64 eps) -1))
0.0ms
eps
@inf
(exp.f64 (+.f64 (cos.f64 eps) -1))
0.0ms
eps
@inf
(log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1)))
0.0ms
eps
@-inf
(exp.f64 (+.f64 (cos.f64 eps) -1))

rewrite66.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
616×pow1_binary64
570×log1p-expm1-u_binary64
570×expm1-log1p-u_binary64
569×add-log-exp_binary64
558×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify103.0ms (0.7%)

Algorithm
egg-herbie
Rules
623×distribute-rgt-out_binary64
613×distribute-lft-out_binary64
514×fma-def_binary64
459×*-commutative_binary64
459×associate-+l+_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
038230
194228
2208228
3641228
42790228
55666228
66084228
76638228
87456228
Stop Event
node limit
Counts
80 → 74
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)
1
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 1/6 (pow.f64 eps 4)) 1))
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 1/6 (pow.f64 eps 4)) (+.f64 1 (*.f64 -31/720 (pow.f64 eps 6)))))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (-.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 (*.f64 eps eps) (fma.f64 (*.f64 eps eps) 1/24 -1/2))
(*.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 (*.f64 eps eps) 1/24 -1/2) (*.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/24 (pow.f64 eps 4) (fma.f64 -1/720 (pow.f64 eps 6) (fma.f64 1/40320 (pow.f64 eps 8) (*.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)))))
(-.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)
1
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) 1)
(fma.f64 -1/2 (*.f64 eps eps) 1)
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 1/6 (pow.f64 eps 4)) 1))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 1/6 (pow.f64 eps 4) 1))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (pow.f64 eps 4) 1/6 1))
(fma.f64 (pow.f64 eps 4) 1/6 (fma.f64 -1/2 (*.f64 eps eps) 1))
(fma.f64 (*.f64 eps eps) (fma.f64 eps (*.f64 eps 1/6) -1/2) 1)
(+.f64 (*.f64 -1/2 (pow.f64 eps 2)) (+.f64 (*.f64 1/6 (pow.f64 eps 4)) (+.f64 1 (*.f64 -31/720 (pow.f64 eps 6)))))
(fma.f64 -1/2 (*.f64 eps eps) (+.f64 (fma.f64 1/6 (pow.f64 eps 4) 1) (*.f64 (pow.f64 eps 6) -31/720)))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (pow.f64 eps 4) 1/6 (fma.f64 (pow.f64 eps 6) -31/720 1)))
(fma.f64 -1/2 (*.f64 eps eps) (fma.f64 (pow.f64 eps 6) -31/720 (fma.f64 (pow.f64 eps 4) 1/6 1)))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (+.f64 (cos.f64 eps) -1))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (+.f64 (cos.f64 eps) -1))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (+.f64 (cos.f64 eps) -1))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (+.f64 (cos.f64 eps) -1))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (+.f64 (cos.f64 eps) -1))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (+.f64 (cos.f64 eps) -1))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (+.f64 (cos.f64 eps) -1))
(exp.f64 (-.f64 (cos.f64 eps) 1))
(exp.f64 (+.f64 (cos.f64 eps) -1))

localize9.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
1.9b
(-.f64 (+.f64 eps x) x)
Compiler

Compiled 12 to 4 computations (66.7% saved)

series3.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite78.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
786×pow1_binary64
735×add-log-exp_binary64
734×log1p-expm1-u_binary64
734×expm1-log1p-u_binary64
720×add-exp-log_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify17.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0124
Stop Event
saturated
Counts
67 → 44
Calls
Call 1
Inputs
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
Outputs
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps
eps

localize17.0ms (0.1%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 x) eps)
1.8b
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) eps)))
Compiler

Compiled 21 to 6 computations (71.4% saved)

series4.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite74.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
543×pow1_binary64
518×add-sqr-sqrt_binary64
497×add-log-exp_binary64
497×expm1-log1p-u_binary64
496×log1p-expm1-u_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify147.0ms (1%)

Algorithm
egg-herbie
Rules
515×distribute-lft-out_binary64
503×sqr-pow_binary64
492×distribute-rgt-out_binary64
431×*-commutative_binary64
398×associate-+l+_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
025190
158188
2145184
3447178
41993177
54037177
64292177
74606177
85129177
95884177
106624177
117580177
Stop Event
node limit
Counts
52 → 35
Calls
Call 1
Inputs
eps
(+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 eps (+.f64 (*.f64 1/24 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(+.f64 (*.f64 -1/720 (*.f64 eps (pow.f64 x 6))) (+.f64 eps (+.f64 (*.f64 1/24 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))))
(*.f64 (cos.f64 x) eps)
(*.f64 (cos.f64 x) eps)
(*.f64 (cos.f64 x) eps)
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 eps (cos.f64 x))
(*.f64 eps (cos.f64 x))
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 (cos.f64 x) eps)
(*.f64 (cos.f64 x) eps)
(*.f64 (cos.f64 x) eps)
(*.f64 (cos.f64 x) eps)
(*.f64 (cos.f64 x) eps)
(*.f64 (cos.f64 x) eps)
(*.f64 (cos.f64 x) eps)
(*.f64 (cos.f64 x) eps)
(*.f64 (cos.f64 x) eps)
(*.f64 (cos.f64 x) eps)
(*.f64 (cos.f64 x) eps)
Outputs
eps
(+.f64 eps (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))
(+.f64 eps (*.f64 -1/2 (*.f64 eps (*.f64 x x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 x x)) eps)
(fma.f64 eps (*.f64 -1/2 (*.f64 x x)) eps)
(fma.f64 x (*.f64 x (*.f64 eps -1/2)) eps)
(+.f64 eps (+.f64 (*.f64 1/24 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2)))))
(+.f64 eps (fma.f64 1/24 (*.f64 eps (pow.f64 x 4)) (*.f64 -1/2 (*.f64 eps (*.f64 x x)))))
(+.f64 eps (fma.f64 -1/2 (*.f64 eps (*.f64 x x)) (*.f64 1/24 (*.f64 eps (pow.f64 x 4)))))
(fma.f64 eps (*.f64 1/24 (pow.f64 x 4)) (fma.f64 eps (*.f64 -1/2 (*.f64 x x)) eps))
(fma.f64 eps (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))) eps)
(+.f64 (*.f64 -1/720 (*.f64 eps (pow.f64 x 6))) (+.f64 eps (+.f64 (*.f64 1/24 (*.f64 eps (pow.f64 x 4))) (*.f64 -1/2 (*.f64 eps (pow.f64 x 2))))))
(fma.f64 -1/720 (*.f64 eps (pow.f64 x 6)) (+.f64 eps (fma.f64 1/24 (*.f64 eps (pow.f64 x 4)) (*.f64 -1/2 (*.f64 eps (*.f64 x x))))))
(+.f64 (fma.f64 -1/2 (*.f64 eps (*.f64 x x)) (*.f64 1/24 (*.f64 eps (pow.f64 x 4)))) (fma.f64 -1/720 (*.f64 eps (pow.f64 x 6)) eps))
(fma.f64 eps (*.f64 -1/720 (pow.f64 x 6)) (fma.f64 eps (*.f64 1/24 (pow.f64 x 4)) (fma.f64 eps (*.f64 -1/2 (*.f64 x x)) eps)))
(fma.f64 eps (*.f64 -1/720 (pow.f64 x 6)) (fma.f64 eps (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))) eps))
(*.f64 eps (+.f64 (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4))) (fma.f64 -1/720 (pow.f64 x 6) 1)))
(*.f64 eps (+.f64 (fma.f64 -1/720 (pow.f64 x 6) 1) (fma.f64 -1/2 (*.f64 x x) (*.f64 1/24 (pow.f64 x 4)))))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 eps (cos.f64 x))
(*.f64 eps (cos.f64 x))
(*.f64 eps (cos.f64 x))
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))

localize16.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))
0.1b
(log1p.f64 (expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))
0.7b
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
3.9b
(sin.f64 (+.f64 x eps))
Compiler

Compiled 37 to 8 computations (78.4% saved)

series6.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
eps
@0
(expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))
1.0ms
x
@0
(expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))
0.0ms
x
@0
(log1p.f64 (expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))
0.0ms
eps
@-inf
(expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))
0.0ms
x
@inf
(expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)))

rewrite103.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
483×log-prod_binary64
477×fma-def_binary64
306×pow-prod-down_binary64
285×pow2_binary64
225×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify70.0ms (0.5%)

Algorithm
egg-herbie
Rules
841×fma-def_binary64
581×associate-*r*_binary64
547×associate-*l*_binary64
429×unsub-neg_binary64
420×associate-+l+_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0122946
1375929
21177890
36397890
Stop Event
node limit
Counts
198 → 186
Calls
Call 1
Inputs
(sin.f64 eps)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps))))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(*.f64 (cos.f64 x) eps)
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (exp.f64 (sin.f64 eps)) 1)
(-.f64 (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) (*.f64 x (exp.f64 (sin.f64 eps)))) (exp.f64 (sin.f64 eps))) 1)
(-.f64 (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) (*.f64 x (exp.f64 (sin.f64 eps)))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) (*.f64 -1/2 (sin.f64 eps))) (*.f64 (pow.f64 x 2) (exp.f64 (sin.f64 eps)))) (exp.f64 (sin.f64 eps)))) 1)
(-.f64 (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) (*.f64 x (exp.f64 (sin.f64 eps)))) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) (+.f64 1/6 (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (cos.f64 eps) 1) (sin.f64 eps))) (*.f64 1/6 (pow.f64 (-.f64 (cos.f64 eps) 1) 3))))) (*.f64 (pow.f64 x 3) (exp.f64 (sin.f64 eps)))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) (*.f64 -1/2 (sin.f64 eps))) (*.f64 (pow.f64 x 2) (exp.f64 (sin.f64 eps)))) (exp.f64 (sin.f64 eps))))) 1)
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) 1)
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) 1)
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) 1)
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) 1)
(*.f64 (cos.f64 x) eps)
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/2 (pow.f64 (cos.f64 x) 2)))) (*.f64 (cos.f64 x) eps))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/2 (pow.f64 (cos.f64 x) 2)))) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 1/6 (pow.f64 (cos.f64 x) 3)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 -1/6 (cos.f64 x)))))))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/2 (pow.f64 (cos.f64 x) 2)))) (+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 -1/6 (pow.f64 (cos.f64 x) 2)) (+.f64 (*.f64 1/8 (pow.f64 (sin.f64 x) 2)) (+.f64 (*.f64 1/24 (sin.f64 x)) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (cos.f64 x) 2) (sin.f64 x))) (*.f64 1/24 (pow.f64 (cos.f64 x) 4))))))) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 1/6 (pow.f64 (cos.f64 x) 3)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 -1/6 (cos.f64 x))))))))
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) 1)
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) 1)
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) 1)
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) 1)
Outputs
(sin.f64 eps)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps)))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (sin.f64 eps)))
(fma.f64 (+.f64 (cos.f64 eps) -1) x (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 eps)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 x 2) (sin.f64 eps))) (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) 1/6) (pow.f64 x 3)) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 -1/6 (cos.f64 eps) 1/6) (pow.f64 x 3) (sin.f64 eps))))
(fma.f64 -1/2 (*.f64 (sin.f64 eps) (*.f64 x x)) (fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps))))
(fma.f64 (+.f64 (cos.f64 eps) -1) x (fma.f64 (sin.f64 eps) (*.f64 x (*.f64 x -1/2)) (fma.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (pow.f64 x 3) (sin.f64 eps))))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 (cos.f64 x) eps (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))
(fma.f64 eps (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (*.f64 -1/2 (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))))
(fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps)))))
(+.f64 (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))
(fma.f64 eps (*.f64 eps (*.f64 -1/2 (sin.f64 x))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3)))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 eps 4) (sin.f64 x))) (+.f64 (*.f64 (cos.f64 x) eps) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))))
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (fma.f64 (cos.f64 x) eps (fma.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)) (*.f64 -1/2 (*.f64 (sin.f64 x) (*.f64 eps eps))))))
(fma.f64 1/24 (*.f64 (sin.f64 x) (pow.f64 eps 4)) (+.f64 (*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps))) (*.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))))))
(fma.f64 (cos.f64 x) (+.f64 eps (*.f64 -1/6 (pow.f64 eps 3))) (*.f64 (sin.f64 x) (+.f64 (*.f64 eps (*.f64 eps -1/2)) (*.f64 1/24 (pow.f64 eps 4)))))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))
(-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))
(-.f64 (exp.f64 (sin.f64 eps)) 1)
(expm1.f64 (sin.f64 eps))
(-.f64 (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) (*.f64 x (exp.f64 (sin.f64 eps)))) (exp.f64 (sin.f64 eps))) 1)
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (exp.f64 (sin.f64 eps)))) (expm1.f64 (sin.f64 eps)))
(fma.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (exp.f64 (sin.f64 eps))) (expm1.f64 (sin.f64 eps)))
(fma.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) x 1) (exp.f64 (sin.f64 eps)) -1)
(fma.f64 (exp.f64 (sin.f64 eps)) (fma.f64 (+.f64 (cos.f64 eps) -1) x 1) -1)
(-.f64 (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) (*.f64 x (exp.f64 (sin.f64 eps)))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) (*.f64 -1/2 (sin.f64 eps))) (*.f64 (pow.f64 x 2) (exp.f64 (sin.f64 eps)))) (exp.f64 (sin.f64 eps)))) 1)
(+.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (exp.f64 (sin.f64 eps))) (fma.f64 (fma.f64 1/2 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (*.f64 (sin.f64 eps) -1/2)) (*.f64 (*.f64 x x) (exp.f64 (sin.f64 eps))) (exp.f64 (sin.f64 eps)))) -1)
(+.f64 (*.f64 (exp.f64 (sin.f64 eps)) (+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) x) (*.f64 (*.f64 x x) (fma.f64 (sin.f64 eps) -1/2 (*.f64 1/2 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)))))) (expm1.f64 (sin.f64 eps)))
(fma.f64 (exp.f64 (sin.f64 eps)) (*.f64 x (+.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (fma.f64 (sin.f64 eps) -1/2 (*.f64 1/2 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)))))) (expm1.f64 (sin.f64 eps)))
(-.f64 (+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) (*.f64 x (exp.f64 (sin.f64 eps)))) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 eps)) (+.f64 1/6 (+.f64 (*.f64 -1/2 (*.f64 (-.f64 (cos.f64 eps) 1) (sin.f64 eps))) (*.f64 1/6 (pow.f64 (-.f64 (cos.f64 eps) 1) 3))))) (*.f64 (pow.f64 x 3) (exp.f64 (sin.f64 eps)))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (pow.f64 (-.f64 (cos.f64 eps) 1) 2)) (*.f64 -1/2 (sin.f64 eps))) (*.f64 (pow.f64 x 2) (exp.f64 (sin.f64 eps)))) (exp.f64 (sin.f64 eps))))) 1)
(+.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (exp.f64 (sin.f64 eps))) (fma.f64 (+.f64 (fma.f64 -1/6 (cos.f64 eps) 1/6) (fma.f64 -1/2 (*.f64 (sin.f64 eps) (+.f64 (cos.f64 eps) -1)) (*.f64 1/6 (pow.f64 (+.f64 (cos.f64 eps) -1) 3)))) (*.f64 (pow.f64 x 3) (exp.f64 (sin.f64 eps))) (fma.f64 (fma.f64 1/2 (pow.f64 (+.f64 (cos.f64 eps) -1) 2) (*.f64 (sin.f64 eps) -1/2)) (*.f64 (*.f64 x x) (exp.f64 (sin.f64 eps))) (exp.f64 (sin.f64 eps))))) -1)
(fma.f64 (+.f64 (cos.f64 eps) -1) (*.f64 x (exp.f64 (sin.f64 eps))) (+.f64 (*.f64 (exp.f64 (sin.f64 eps)) (+.f64 (*.f64 (pow.f64 x 3) (+.f64 (fma.f64 (cos.f64 eps) -1/6 1/6) (fma.f64 1/6 (pow.f64 (+.f64 (cos.f64 eps) -1) 3) (*.f64 (+.f64 (cos.f64 eps) -1) (*.f64 (sin.f64 eps) -1/2))))) (*.f64 (*.f64 x x) (fma.f64 (sin.f64 eps) -1/2 (*.f64 1/2 (pow.f64 (+.f64 (cos.f64 eps) -1) 2)))))) (expm1.f64 (sin.f64 eps))))
(+.f64 (*.f64 (exp.f64 (sin.f64 eps)) (+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) x) (*.f64 (*.f64 x x) (+.f64 (*.f64 x (fma.f64 (cos.f64 eps) -1/6 (fma.f64 (sin.f64 eps) (fma.f64 (cos.f64 eps) -1/2 1/2) (fma.f64 1/6 (pow.f64 (+.f64 (cos.f64 eps) -1) 3) 1/6)))) (fma.f64 (sin.f64 eps) -1/2 (*.f64 1/2 (pow.f64 (+.f64 (cos.f64 eps) -1) 2))))))) (expm1.f64 (sin.f64 eps)))
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 eps (*.f64 -1 x))) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
(*.f64 (cos.f64 x) eps)
(*.f64 eps (cos.f64 x))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/2 (pow.f64 (cos.f64 x) 2)))) (*.f64 (cos.f64 x) eps))
(fma.f64 (*.f64 eps eps) (fma.f64 -1/2 (sin.f64 x) (*.f64 1/2 (pow.f64 (cos.f64 x) 2))) (*.f64 eps (cos.f64 x)))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 eps (fma.f64 -1/2 (sin.f64 x) (*.f64 1/2 (pow.f64 (cos.f64 x) 2))))))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/2 (pow.f64 (cos.f64 x) 2)))) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 1/6 (pow.f64 (cos.f64 x) 3)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 -1/6 (cos.f64 x)))))))
(fma.f64 (*.f64 eps eps) (fma.f64 -1/2 (sin.f64 x) (*.f64 1/2 (pow.f64 (cos.f64 x) 2))) (fma.f64 (cos.f64 x) eps (*.f64 (pow.f64 eps 3) (fma.f64 1/6 (pow.f64 (cos.f64 x) 3) (fma.f64 -1/2 (*.f64 (sin.f64 x) (cos.f64 x)) (*.f64 -1/6 (cos.f64 x)))))))
(fma.f64 (*.f64 eps eps) (fma.f64 -1/2 (sin.f64 x) (*.f64 1/2 (pow.f64 (cos.f64 x) 2))) (fma.f64 (pow.f64 eps 3) (fma.f64 1/6 (pow.f64 (cos.f64 x) 3) (fma.f64 -1/6 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (cos.f64 x))))) (*.f64 eps (cos.f64 x))))
(fma.f64 eps (cos.f64 x) (*.f64 (*.f64 eps eps) (+.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 1/2 (pow.f64 (cos.f64 x) 2))) (*.f64 eps (fma.f64 1/6 (pow.f64 (cos.f64 x) 3) (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (sin.f64 x)) -1/6)))))))
(+.f64 (*.f64 (pow.f64 eps 2) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 1/2 (pow.f64 (cos.f64 x) 2)))) (+.f64 (*.f64 (pow.f64 eps 4) (+.f64 (*.f64 -1/6 (pow.f64 (cos.f64 x) 2)) (+.f64 (*.f64 1/8 (pow.f64 (sin.f64 x) 2)) (+.f64 (*.f64 1/24 (sin.f64 x)) (+.f64 (*.f64 -1/4 (*.f64 (pow.f64 (cos.f64 x) 2) (sin.f64 x))) (*.f64 1/24 (pow.f64 (cos.f64 x) 4))))))) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 1/6 (pow.f64 (cos.f64 x) 3)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 x) (sin.f64 x))) (*.f64 -1/6 (cos.f64 x))))))))
(fma.f64 (*.f64 eps eps) (fma.f64 -1/2 (sin.f64 x) (*.f64 1/2 (pow.f64 (cos.f64 x) 2))) (fma.f64 (pow.f64 eps 4) (fma.f64 -1/6 (pow.f64 (cos.f64 x) 2) (fma.f64 1/8 (pow.f64 (sin.f64 x) 2) (fma.f64 1/24 (sin.f64 x) (fma.f64 -1/4 (*.f64 (sin.f64 x) (pow.f64 (cos.f64 x) 2)) (*.f64 1/24 (pow.f64 (cos.f64 x) 4)))))) (fma.f64 (cos.f64 x) eps (*.f64 (pow.f64 eps 3) (fma.f64 1/6 (pow.f64 (cos.f64 x) 3) (fma.f64 -1/2 (*.f64 (sin.f64 x) (cos.f64 x)) (*.f64 -1/6 (cos.f64 x))))))))
(fma.f64 (*.f64 eps eps) (fma.f64 -1/2 (sin.f64 x) (*.f64 1/2 (pow.f64 (cos.f64 x) 2))) (fma.f64 (pow.f64 eps 4) (fma.f64 -1/6 (pow.f64 (cos.f64 x) 2) (fma.f64 1/8 (pow.f64 (sin.f64 x) 2) (+.f64 (*.f64 1/24 (pow.f64 (cos.f64 x) 4)) (*.f64 (sin.f64 x) (+.f64 1/24 (*.f64 (pow.f64 (cos.f64 x) 2) -1/4)))))) (fma.f64 (pow.f64 eps 3) (fma.f64 1/6 (pow.f64 (cos.f64 x) 3) (fma.f64 -1/6 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 -1/2 (cos.f64 x))))) (*.f64 eps (cos.f64 x)))))
(fma.f64 (pow.f64 eps 4) (fma.f64 1/8 (pow.f64 (sin.f64 x) 2) (fma.f64 -1/6 (pow.f64 (cos.f64 x) 2) (fma.f64 (sin.f64 x) (+.f64 1/24 (*.f64 (pow.f64 (cos.f64 x) 2) -1/4)) (*.f64 1/24 (pow.f64 (cos.f64 x) 4))))) (fma.f64 eps (cos.f64 x) (*.f64 (*.f64 eps eps) (+.f64 (fma.f64 -1/2 (sin.f64 x) (*.f64 1/2 (pow.f64 (cos.f64 x) 2))) (*.f64 eps (fma.f64 1/6 (pow.f64 (cos.f64 x) 3) (*.f64 (cos.f64 x) (+.f64 (*.f64 -1/2 (sin.f64 x)) -1/6))))))))
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
(-.f64 (exp.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))
(-.f64 (exp.f64 (-.f64 (sin.f64 (-.f64 x (*.f64 -1 eps))) (sin.f64 x))) 1)
(expm1.f64 (-.f64 (sin.f64 (+.f64 eps x)) (sin.f64 x)))

localize197.0ms (1.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 x) eps)
0.3b
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))
3.6b
(*.f64 (pow.f64 eps 2) (sin.f64 x))
8.0b
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
Compiler

Compiled 89 to 52 computations (41.6% saved)

series7.0ms (0%)

Counts
2 → 19
Calls

12 calls:

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

rewrite92.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
760×log-prod_binary64
431×fma-def_binary64
400×pow2_binary64
279×pow1/3_binary64
278×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify158.0ms (1.1%)

Algorithm
egg-herbie
Rules
766×distribute-rgt-in_binary64
544×distribute-rgt-out_binary64
528×unswap-sqr_binary64
521×distribute-lft-in_binary64
470×sqr-pow_binary64
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
047383
1127383
2428354
32008343
44357341
55360340
66084340
76246340
86435340
96672340
106972340
117416340
Stop Event
node limit
Counts
108 → 109
Calls
Call 1
Inputs
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))
(*.f64 -1/6 (pow.f64 eps 3))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/6 (pow.f64 eps 3)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (*.f64 -1/6 (pow.f64 eps 3))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(*.f64 -1/6 (pow.f64 eps 3))
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (*.f64 -1/6 (pow.f64 eps 3)))
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 -1/144 (*.f64 (pow.f64 eps 3) (pow.f64 x 4)))))
(+.f64 (*.f64 1/4320 (*.f64 (pow.f64 eps 3) (pow.f64 x 6))) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 -1/144 (*.f64 (pow.f64 eps 3) (pow.f64 x 4))))))
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)))
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)))
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)))
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)))
Outputs
(*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x)))
(*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x)))
(*.f64 (sin.f64 x) (*.f64 -1/2 (*.f64 eps eps)))
(*.f64 eps (*.f64 eps (*.f64 -1/2 (sin.f64 x))))
(*.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x)))
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))
(*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x)))
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))
(*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x)))
(*.f64 -1/6 (pow.f64 eps 3))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (*.f64 -1/6 (pow.f64 eps 3)))
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) (*.f64 -1/6 (pow.f64 eps 3)))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (*.f64 -1/6 (pow.f64 eps 3)))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 eps -1/6) (*.f64 -1/2 x)))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (*.f64 eps -1/6)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (*.f64 -1/6 (pow.f64 eps 3))))
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) (fma.f64 1/12 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (*.f64 -1/6 (pow.f64 eps 3))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) (*.f64 (*.f64 x x) 1/12))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (*.f64 (pow.f64 eps 3) (+.f64 -1/6 (*.f64 x (*.f64 x 1/12)))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (*.f64 eps (+.f64 -1/6 (*.f64 x (*.f64 x 1/12))))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 eps 2) x)) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 1/12 (*.f64 (pow.f64 eps 2) (pow.f64 x 3))))))
(fma.f64 -1/2 (*.f64 (*.f64 eps eps) x) (fma.f64 1/12 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 1/12 (*.f64 (*.f64 eps eps) (pow.f64 x 3))))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (fma.f64 1/12 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 (pow.f64 x 3) (*.f64 (*.f64 eps eps) 1/12)))))
(+.f64 (*.f64 (pow.f64 eps 3) (+.f64 -1/6 (*.f64 x (*.f64 x 1/12)))) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 1/12 (pow.f64 x 3)) (*.f64 -1/2 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps x)) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 1/12 (*.f64 (*.f64 eps (*.f64 eps (*.f64 x x))) (+.f64 eps x)))))
(+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (*.f64 x (*.f64 x 1/12)) (+.f64 eps x)) (*.f64 -1/2 x))))
(+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 x) (*.f64 (*.f64 x (*.f64 x 1/12)) (+.f64 eps x)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 eps (*.f64 -1/6 (cos.f64 x)))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 eps (*.f64 -1/6 (cos.f64 x))) (*.f64 -1/2 (sin.f64 x))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 -1/2 (sin.f64 x))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 eps (*.f64 -1/6 (cos.f64 x)))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 eps (*.f64 -1/6 (cos.f64 x))) (*.f64 -1/2 (sin.f64 x))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 -1/2 (sin.f64 x))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 eps (*.f64 -1/6 (cos.f64 x)))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 eps (*.f64 -1/6 (cos.f64 x))) (*.f64 -1/2 (sin.f64 x))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 -1/2 (sin.f64 x))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3))) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)) (*.f64 -1/2 (*.f64 (*.f64 eps eps) (sin.f64 x))))
(fma.f64 -1/2 (*.f64 eps (*.f64 eps (sin.f64 x))) (*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 -1/2 (sin.f64 x)) (*.f64 eps (*.f64 -1/6 (cos.f64 x)))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 eps (*.f64 -1/6 (cos.f64 x))) (*.f64 -1/2 (sin.f64 x))))
(*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 -1/2 (sin.f64 x))))
(*.f64 -1/6 (pow.f64 eps 3))
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (*.f64 -1/6 (pow.f64 eps 3)))
(fma.f64 1/12 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (*.f64 -1/6 (pow.f64 eps 3)))
(fma.f64 -1/6 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) (*.f64 (*.f64 x x) 1/12)))
(*.f64 (pow.f64 eps 3) (+.f64 -1/6 (*.f64 x (*.f64 x 1/12))))
(+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 -1/144 (*.f64 (pow.f64 eps 3) (pow.f64 x 4)))))
(fma.f64 1/12 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 -1/144 (*.f64 (pow.f64 eps 3) (pow.f64 x 4)))))
(fma.f64 1/12 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) (*.f64 (pow.f64 x 4) -1/144))))
(fma.f64 -1/6 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 x (*.f64 x 1/12)) (*.f64 -1/144 (pow.f64 x 4)))))
(*.f64 (pow.f64 eps 3) (+.f64 (+.f64 -1/6 (*.f64 x (*.f64 x 1/12))) (*.f64 -1/144 (pow.f64 x 4))))
(*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/144 (pow.f64 x 4)) (+.f64 -1/6 (*.f64 x (*.f64 x 1/12)))))
(*.f64 (pow.f64 eps 3) (+.f64 -1/6 (+.f64 (*.f64 x (*.f64 x 1/12)) (*.f64 -1/144 (pow.f64 x 4)))))
(+.f64 (*.f64 1/4320 (*.f64 (pow.f64 eps 3) (pow.f64 x 6))) (+.f64 (*.f64 1/12 (*.f64 (pow.f64 eps 3) (pow.f64 x 2))) (+.f64 (*.f64 -1/6 (pow.f64 eps 3)) (*.f64 -1/144 (*.f64 (pow.f64 eps 3) (pow.f64 x 4))))))
(fma.f64 1/4320 (*.f64 (pow.f64 eps 3) (pow.f64 x 6)) (fma.f64 1/12 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 -1/144 (*.f64 (pow.f64 eps 3) (pow.f64 x 4))))))
(fma.f64 1/4320 (*.f64 (pow.f64 eps 3) (pow.f64 x 6)) (fma.f64 1/12 (*.f64 (pow.f64 eps 3) (*.f64 x x)) (fma.f64 -1/6 (pow.f64 eps 3) (*.f64 (pow.f64 eps 3) (*.f64 (pow.f64 x 4) -1/144)))))
(+.f64 (*.f64 (pow.f64 eps 3) (+.f64 -1/6 (*.f64 x (*.f64 x 1/12)))) (*.f64 (pow.f64 eps 3) (+.f64 (*.f64 -1/144 (pow.f64 x 4)) (*.f64 1/4320 (pow.f64 x 6)))))
(*.f64 (pow.f64 eps 3) (+.f64 (+.f64 -1/6 (*.f64 x (*.f64 x 1/12))) (+.f64 (*.f64 1/4320 (pow.f64 x 6)) (*.f64 -1/144 (pow.f64 x 4)))))
(*.f64 (pow.f64 eps 3) (+.f64 (*.f64 1/4320 (pow.f64 x 6)) (+.f64 (*.f64 -1/144 (pow.f64 x 4)) (+.f64 -1/6 (*.f64 x (*.f64 x 1/12))))))
(*.f64 (pow.f64 eps 3) (+.f64 -1/6 (+.f64 (*.f64 1/4320 (pow.f64 x 6)) (+.f64 (*.f64 x (*.f64 x 1/12)) (*.f64 -1/144 (pow.f64 x 4))))))
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)))
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))
(*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x)))
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)))
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))
(*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x)))
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)))
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))
(*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x)))
(*.f64 -1/6 (*.f64 (cos.f64 x) (pow.f64 eps 3)))
(*.f64 -1/6 (*.f64 (pow.f64 eps 3) (cos.f64 x)))
(*.f64 (pow.f64 eps 3) (*.f64 -1/6 (cos.f64 x)))

eval463.0ms (3.1%)

Compiler

Compiled 16247 to 6994 computations (57% saved)

prune256.0ms (1.7%)

Pruning

64 alts after pruning (56 fresh and 8 done)

PrunedKeptTotal
New78915804
Fresh94150
Picked101
Done2810
Total80164865
Error
0.0b
Counts
865 → 64
Alt Table
Click to see full alt table
StatusErrorProgram
19.5b
(fma.f64 (sin.f64 x) (cos.f64 eps) (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)))
61.1b
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 3) (sin.f64 x))
34.9b
(*.f64 (cos.f64 x) eps)
59.1b
(fma.f64 (sin.f64 x) (cos.f64 eps) (neg.f64 (sin.f64 x)))
35.7b
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
51.1b
(-.f64 (pow.f64 (pow.f64 (sin.f64 (+.f64 x eps)) 6) 1/6) (sin.f64 x))
0.3b
(fma.f64 (fma.f64 (pow.f64 (cbrt.f64 (cos.f64 eps)) 2) (cbrt.f64 (cos.f64 eps)) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
31.9b
(fma.f64 (+.f64 (cos.f64 eps) -1) x (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 eps)))
60.7b
(-.f64 (+.f64 (*.f64 (cos.f64 x) eps) 1) 1)
36.4b
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 eps)) 3) (sin.f64 x))
35.4b
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x))))
61.2b
(+.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
18.8b
(cbrt.f64 (pow.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))) 3))
36.5b
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
56.5b
(*.f64 (-.f64 (pow.f64 (*.f64 eps (cos.f64 x)) 2) (*.f64 1/4 (pow.f64 (*.f64 eps (sqrt.f64 (sin.f64 x))) 4))) (/.f64 1 (fma.f64 eps (cos.f64 x) (*.f64 1/2 (*.f64 eps (*.f64 eps (sin.f64 x)))))))
29.0b
(log1p.f64 (expm1.f64 (sin.f64 eps)))
61.2b
(-.f64 (*.f64 (cos.f64 eps) x) x)
37.2b
(-.f64 (fma.f64 (cos.f64 eps) x (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 eps))) x)
42.1b
(log1p.f64 (-.f64 (exp.f64 (sin.f64 eps)) 1))
36.2b
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2)
50.1b
(+.f64 eps (*.f64 (*.f64 -1/2 (*.f64 eps x)) (+.f64 eps x)))
28.9b
(sin.f64 eps)
42.6b
(*.f64 (*.f64 eps (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)))
35.3b
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps -1/2))))
36.2b
(pow.f64 (cbrt.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))) 3)
35.1b
(*.f64 (*.f64 eps (pow.f64 (cbrt.f64 (cos.f64 x)) 2)) (cbrt.f64 (cos.f64 x)))
35.5b
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 -1/2 (sin.f64 x)))))
37.0b
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x))
49.9b
(*.f64 (*.f64 (cos.f64 x) (sqrt.f64 eps)) (sqrt.f64 eps))
48.3b
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 eps) 2)) (sin.f64 x))
35.5b
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) eps)))
48.9b
(+.f64 eps (*.f64 (*.f64 eps eps) (*.f64 -1/2 x)))
19.6b
(-.f64 (+.f64 (*.f64 (sin.f64 x) (cos.f64 eps)) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x))
54.0b
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3))
30.6b
(pow.f64 (sqrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) 2)
1.4b
(pow.f64 (cbrt.f64 (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))) 3)
19.6b
(+.f64 (fma.f64 (cos.f64 x) (sin.f64 eps) (neg.f64 (sin.f64 x))) (*.f64 (sin.f64 x) (cos.f64 eps)))
35.9b
(-.f64 (sin.f64 eps) (sin.f64 x))
54.4b
(-.f64 (+.f64 eps x) x)
0.3b
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x)))
0.3b
(fma.f64 (/.f64 (pow.f64 (sin.f64 eps) 2) (-.f64 -1 (cos.f64 eps))) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
28.0b
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (sin.f64 eps))
48.2b
(pow.f64 (cbrt.f64 (+.f64 eps 0)) 3)
48.3b
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) eps)) 2)
50.0b
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 x))))
61.3b
0
35.5b
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) eps)) 3)
42.6b
(-.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 x eps)))) (sin.f64 x))
47.2b
(-.f64 (fabs.f64 (sin.f64 (+.f64 x eps))) (sin.f64 x))
0.3b
(fma.f64 (sin.f64 eps) (cos.f64 x) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
0.3b
(fma.f64 (log.f64 (exp.f64 (+.f64 (cos.f64 eps) -1))) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
48.4b
(sqrt.f64 (pow.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x)) 2))
49.2b
(*.f64 (cbrt.f64 (fma.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2) (*.f64 eps (cos.f64 x)))) (cbrt.f64 (pow.f64 (fma.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2) (*.f64 eps (cos.f64 x))) 2)))
34.3b
(-.f64 (+.f64 (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x))
60.3b
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 x) 2)) (sin.f64 x))
61.2b
(*.f64 (-.f64 (cos.f64 eps) 1) x)
0.2b
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
47.9b
eps
55.2b
(/.f64 (-.f64 (*.f64 eps eps) 0) (-.f64 eps 0))
0.3b
(fma.f64 (log.f64 (-.f64 (+.f64 1 (exp.f64 (+.f64 (cos.f64 eps) -1))) 1)) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
19.6b
(+.f64 (-.f64 (*.f64 (cos.f64 x) (sin.f64 eps)) (sin.f64 x)) (*.f64 (sin.f64 x) (cos.f64 eps)))
36.0b
(log1p.f64 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))
19.5b
(fma.f64 (sin.f64 x) (cos.f64 eps) (fma.f64 (sin.f64 eps) (cos.f64 x) (neg.f64 (sin.f64 x))))
18.8b
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) 3)))
Compiler

Compiled 820 to 571 computations (30.4% saved)

regimes403.0ms (2.7%)

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

4 calls:

115.0ms
x
110.0ms
eps
82.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
52.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Results
ErrorSegmentsBranch
0.2b1x
0.2b1eps
0.2b1(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
0.2b1(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Compiler

Compiled 1615 to 557 computations (65.5% saved)

regimes208.0ms (1.4%)

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

4 calls:

58.0ms
x
56.0ms
eps
37.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
35.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Results
ErrorSegmentsBranch
0.3b1x
0.3b1eps
0.3b1(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
0.3b1(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Compiler

Compiled 839 to 340 computations (59.5% saved)

regimes404.0ms (2.7%)

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

4 calls:

130.0ms
eps
113.0ms
x
72.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
69.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Results
ErrorSegmentsBranch
17.0b3x
14.9b3eps
15.7b3(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
15.7b3(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Compiler

Compiled 678 to 273 computations (59.7% saved)

bsearch124.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
61.0ms
3.223341072942121e-5
74.34671932251439
62.0ms
-8661182162451.163
-3.3835551069291535e-5
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes420.0ms (2.9%)

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

4 calls:

130.0ms
eps
125.0ms
x
74.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
72.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Results
ErrorSegmentsBranch
17.0b3x
15.0b3eps
15.9b3(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
15.9b3(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Compiler

Compiled 667 to 270 computations (59.5% saved)

bsearch136.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
62.0ms
3.223341072942121e-5
74.34671932251439
73.0ms
-8661182162451.163
-3.3835551069291535e-5
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes312.0ms (2.1%)

Counts
55 → 3
Calls
Call 1
Inputs
eps
eps
0
eps
(-.f64 (+.f64 eps x) x)
(/.f64 (-.f64 (*.f64 eps eps) 0) (-.f64 eps 0))
(+.f64 eps (*.f64 (*.f64 eps eps) (*.f64 -1/2 x)))
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 x))))
(+.f64 eps (*.f64 (*.f64 -1/2 (*.f64 eps x)) (+.f64 eps x)))
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x)))))
(sin.f64 eps)
(*.f64 (cos.f64 x) eps)
(-.f64 (*.f64 (cos.f64 eps) x) x)
(*.f64 (-.f64 (cos.f64 eps) 1) x)
(-.f64 (+.f64 (*.f64 (cos.f64 x) eps) 1) 1)
(*.f64 eps (*.f64 eps (*.f64 -1/2 (sin.f64 x))))
(-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1)
(-.f64 (sin.f64 x) (sin.f64 x))
(-.f64 (sin.f64 eps) (sin.f64 x))
(pow.f64 (cbrt.f64 (+.f64 eps 0)) 3)
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps -1/2))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x))))
(+.f64 (*.f64 eps (*.f64 eps (*.f64 (sin.f64 x) -1/2))) (*.f64 eps (cos.f64 x)))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 0 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2)
(log1p.f64 (expm1.f64 (sin.f64 eps)))
(log1p.f64 (-.f64 (exp.f64 (sin.f64 eps)) 1))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) eps)))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) eps)) 2)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) eps)) 3)
(*.f64 (*.f64 (cos.f64 x) (sqrt.f64 eps)) (sqrt.f64 eps))
(-.f64 (fabs.f64 (sin.f64 (+.f64 x eps))) (sin.f64 x))
(pow.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3) 1/3)
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 (+.f64 (cos.f64 eps) -1) x (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 eps)))
(-.f64 (fma.f64 (cos.f64 eps) x (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 eps))) x)
(+.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 -1/2 (sin.f64 x)))))
(log1p.f64 (expm1.f64 (-.f64 (sin.f64 eps) (sin.f64 x))))
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 eps) 2)) (sin.f64 x))
(-.f64 (sqrt.f64 (pow.f64 (sin.f64 x) 2)) (sin.f64 x))
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 x)) 3) (sin.f64 x))
(fma.f64 (sin.f64 x) (cos.f64 eps) (neg.f64 (sin.f64 x)))
(-.f64 (pow.f64 (cbrt.f64 (sin.f64 eps)) 3) (sin.f64 x))
(*.f64 (*.f64 eps (sqrt.f64 (cos.f64 x))) (sqrt.f64 (cos.f64 x)))
(log1p.f64 (expm1.f64 (-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))))
Outputs
(-.f64 (sin.f64 eps) (sin.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 -1/2 (sin.f64 x)))))
(-.f64 (sin.f64 eps) (sin.f64 x))
Calls

4 calls:

100.0ms
eps
91.0ms
x
54.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
51.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Results
ErrorSegmentsBranch
17.0b3x
15.4b3eps
16.2b3(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
16.2b3(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Compiler

Compiled 494 to 221 computations (55.3% saved)

bsearch125.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
65.0ms
3.223341072942121e-5
74.34671932251439
60.0ms
-8661182162451.163
-3.3835551069291535e-5
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes237.0ms (1.6%)

Counts
46 → 3
Calls
Call 1
Inputs
eps
eps
0
eps
(-.f64 (+.f64 eps x) x)
(/.f64 (-.f64 (*.f64 eps eps) 0) (-.f64 eps 0))
(+.f64 eps (*.f64 (*.f64 eps eps) (*.f64 -1/2 x)))
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 x))))
(+.f64 eps (*.f64 (*.f64 -1/2 (*.f64 eps x)) (+.f64 eps x)))
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x)))))
(sin.f64 eps)
(*.f64 (cos.f64 x) eps)
(-.f64 (*.f64 (cos.f64 eps) x) x)
(*.f64 (-.f64 (cos.f64 eps) 1) x)
(-.f64 (+.f64 (*.f64 (cos.f64 x) eps) 1) 1)
(*.f64 eps (*.f64 eps (*.f64 -1/2 (sin.f64 x))))
(-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1)
(-.f64 (sin.f64 x) (sin.f64 x))
(-.f64 (sin.f64 eps) (sin.f64 x))
(pow.f64 (cbrt.f64 (+.f64 eps 0)) 3)
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps -1/2))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x))))
(+.f64 (*.f64 eps (*.f64 eps (*.f64 (sin.f64 x) -1/2))) (*.f64 eps (cos.f64 x)))
(+.f64 (*.f64 (cos.f64 x) eps) (+.f64 0 (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2))))
(*.f64 (*.f64 (sin.f64 (*.f64 (+.f64 x (-.f64 eps x)) 1/2)) (cos.f64 (*.f64 (+.f64 x (+.f64 x eps)) 1/2))) 2)
(log1p.f64 (expm1.f64 (sin.f64 eps)))
(log1p.f64 (-.f64 (exp.f64 (sin.f64 eps)) 1))
(expm1.f64 (log1p.f64 (*.f64 (cos.f64 x) eps)))
(cbrt.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3))
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 x) eps)) 2)
(pow.f64 (cbrt.f64 (*.f64 (cos.f64 x) eps)) 3)
(*.f64 (*.f64 (cos.f64 x) (sqrt.f64 eps)) (sqrt.f64 eps))
(-.f64 (fabs.f64 (sin.f64 (+.f64 x eps))) (sin.f64 x))
(pow.f64 (pow.f64 (*.f64 (cos.f64 x) eps) 3) 1/3)
(-.f64 (fma.f64 (cos.f64 eps) x (sin.f64 eps)) x)
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) (sin.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
(fma.f64 (+.f64 (cos.f64 eps) -1) x (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 eps)))
(-.f64 (fma.f64 (cos.f64 eps) x (*.f64 (+.f64 (*.f64 x (*.f64 x -1/2)) 1) (sin.f64 eps))) x)
(+.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1) (*.f64 -1/2 (*.f64 (pow.f64 eps 2) (sin.f64 x))))
Outputs
(-.f64 (sin.f64 eps) (sin.f64 x))
(+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x))))
(-.f64 (sin.f64 eps) (sin.f64 x))
Calls

4 calls:

75.0ms
eps
66.0ms
x
44.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
40.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Results
ErrorSegmentsBranch
17.0b3x
15.5b3eps
16.2b3(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
16.2b3(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Compiler

Compiled 409 to 188 computations (54% saved)

bsearch118.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
58.0ms
3.223341072942121e-5
74.34671932251439
59.0ms
-1.4642388533915009e-6
-3.563137615429812e-10
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes120.0ms (0.8%)

Counts
26 → 3
Calls
Call 1
Inputs
eps
eps
0
eps
(-.f64 (+.f64 eps x) x)
(/.f64 (-.f64 (*.f64 eps eps) 0) (-.f64 eps 0))
(+.f64 eps (*.f64 (*.f64 eps eps) (*.f64 -1/2 x)))
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 x))))
(+.f64 eps (*.f64 (*.f64 -1/2 (*.f64 eps x)) (+.f64 eps x)))
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x)))))
(sin.f64 eps)
(*.f64 (cos.f64 x) eps)
(-.f64 (*.f64 (cos.f64 eps) x) x)
(*.f64 (-.f64 (cos.f64 eps) 1) x)
(-.f64 (+.f64 (*.f64 (cos.f64 x) eps) 1) 1)
(*.f64 eps (*.f64 eps (*.f64 -1/2 (sin.f64 x))))
(-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1)
(-.f64 (sin.f64 x) (sin.f64 x))
(-.f64 (sin.f64 eps) (sin.f64 x))
(pow.f64 (cbrt.f64 (+.f64 eps 0)) 3)
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps -1/2))))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 -1/2 (*.f64 eps (sin.f64 x)))))
Outputs
(-.f64 (sin.f64 eps) (sin.f64 x))
(*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps -1/2))))
(-.f64 (sin.f64 eps) (sin.f64 x))
Calls

4 calls:

35.0ms
x
34.0ms
eps
23.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
22.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Results
ErrorSegmentsBranch
17.1b3x
15.5b3eps
16.2b3(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
16.2b3(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Compiler

Compiled 198 to 98 computations (50.5% saved)

bsearch121.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
60.0ms
3.223341072942121e-5
74.34671932251439
61.0ms
-1.4642388533915009e-6
-3.563137615429812e-10
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes122.0ms (0.8%)

Counts
24 → 3
Calls
Call 1
Inputs
eps
eps
0
eps
(-.f64 (+.f64 eps x) x)
(/.f64 (-.f64 (*.f64 eps eps) 0) (-.f64 eps 0))
(+.f64 eps (*.f64 (*.f64 eps eps) (*.f64 -1/2 x)))
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 x))))
(+.f64 eps (*.f64 (*.f64 -1/2 (*.f64 eps x)) (+.f64 eps x)))
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x)))))
(sin.f64 eps)
(*.f64 (cos.f64 x) eps)
(-.f64 (*.f64 (cos.f64 eps) x) x)
(*.f64 (-.f64 (cos.f64 eps) 1) x)
(-.f64 (+.f64 (*.f64 (cos.f64 x) eps) 1) 1)
(*.f64 eps (*.f64 eps (*.f64 -1/2 (sin.f64 x))))
(-.f64 (+.f64 1 (*.f64 (cos.f64 x) eps)) 1)
(-.f64 (sin.f64 x) (sin.f64 x))
(-.f64 (sin.f64 eps) (sin.f64 x))
(pow.f64 (cbrt.f64 (+.f64 eps 0)) 3)
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
(-.f64 (+.f64 (*.f64 (cos.f64 eps) x) (sin.f64 eps)) x)
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
(+.f64 (*.f64 (-.f64 (cos.f64 eps) 1) x) (sin.f64 eps))
Outputs
(-.f64 (sin.f64 eps) (sin.f64 x))
(*.f64 (cos.f64 x) eps)
(-.f64 (sin.f64 eps) (sin.f64 x))
Calls

4 calls:

35.0ms
x
34.0ms
eps
26.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
22.0ms
(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Results
ErrorSegmentsBranch
17.1b3x
15.5b3eps
16.3b3(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
16.3b3(-.f64 (sin.f64 (+.f64 x eps)) (sin.f64 x))
Compiler

Compiled 176 to 88 computations (50% saved)

bsearch118.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
58.0ms
3.223341072942121e-5
74.34671932251439
59.0ms
-1.4642388533915009e-6
-3.563137615429812e-10
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes53.0ms (0.4%)

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

2 calls:

25.0ms
eps
24.0ms
x
Results
ErrorSegmentsBranch
17.3b3x
16.0b3eps
Compiler

Compiled 113 to 57 computations (49.6% saved)

bsearch119.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
60.0ms
3.223341072942121e-5
74.34671932251439
59.0ms
-1.4642388533915009e-6
-3.563137615429812e-10
Compiler

Compiled 14 to 10 computations (28.6% saved)

regimes17.0ms (0.1%)

Counts
11 → 1
Calls
Call 1
Inputs
eps
eps
0
eps
(-.f64 (+.f64 eps x) x)
(/.f64 (-.f64 (*.f64 eps eps) 0) (-.f64 eps 0))
(+.f64 eps (*.f64 (*.f64 eps eps) (*.f64 -1/2 x)))
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 x))))
(+.f64 eps (*.f64 (*.f64 -1/2 (*.f64 eps x)) (+.f64 eps x)))
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x)))))
(sin.f64 eps)
Outputs
(sin.f64 eps)
Calls

2 calls:

8.0ms
eps
7.0ms
x
Results
ErrorSegmentsBranch
28.9b1x
28.9b1eps
Compiler

Compiled 68 to 35 computations (48.5% saved)

regimes15.0ms (0.1%)

Accuracy

Total -15.0b remaining (-31.3%)

Threshold costs -15.0b (-31.3%)

Counts
10 → 1
Calls
Call 1
Inputs
eps
eps
0
eps
(-.f64 (+.f64 eps x) x)
(/.f64 (-.f64 (*.f64 eps eps) 0) (-.f64 eps 0))
(+.f64 eps (*.f64 (*.f64 eps eps) (*.f64 -1/2 x)))
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 x))))
(+.f64 eps (*.f64 (*.f64 -1/2 (*.f64 eps x)) (+.f64 eps x)))
(+.f64 eps (*.f64 eps (*.f64 x (*.f64 -1/2 (+.f64 eps x)))))
Outputs
eps
Calls

2 calls:

7.0ms
eps
6.0ms
x
Results
ErrorSegmentsBranch
47.9b1x
47.9b1eps
Compiler

Compiled 66 to 34 computations (48.5% saved)

simplify19.0ms (0.1%)

Algorithm
egg-herbie
Rules
12×*-commutative_binary64
10×+-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
055400
176400
281400
383400
484400
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x)))
(if (<=.f64 eps -8869050534349991/1024) (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (sin.f64 eps)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 -1/2 (sin.f64 x))))) (-.f64 (+.f64 (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x))))
(if (<=.f64 eps -8869050534349991/1024) (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (sin.f64 eps)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 -1/2 (sin.f64 x))))) (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (sin.f64 eps))))
(if (<=.f64 eps -8869050534349991/1024) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 -1/2 (sin.f64 x))))) (-.f64 (sin.f64 eps) (sin.f64 x))))
(if (<=.f64 eps -432167030260719/295147905179352825856) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x)))) (-.f64 (sin.f64 eps) (sin.f64 x))))
(if (<=.f64 eps -432167030260719/295147905179352825856) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps -1/2)))) (-.f64 (sin.f64 eps) (sin.f64 x))))
(if (<=.f64 eps -432167030260719/295147905179352825856) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (*.f64 (cos.f64 x) eps) (-.f64 (sin.f64 eps) (sin.f64 x))))
(if (<=.f64 eps -432167030260719/295147905179352825856) (sin.f64 eps) (if (<=.f64 eps 4756811826787173/147573952589676412928) (*.f64 (cos.f64 x) eps) (sin.f64 eps)))
(sin.f64 eps)
eps
Outputs
(fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x)))
(+.f64 (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)) (*.f64 (sin.f64 eps) (cos.f64 x)))
(+.f64 (*.f64 (sin.f64 eps) (cos.f64 x)) (*.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x)))
(if (<=.f64 eps -8869050534349991/1024) (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (sin.f64 eps)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 -1/2 (sin.f64 x))))) (-.f64 (+.f64 (sin.f64 x) (*.f64 (cos.f64 x) (sin.f64 eps))) (sin.f64 x))))
(if (<=.f64 eps -8869050534349991/1024) (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (sin.f64 eps)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (+.f64 (*.f64 eps (cos.f64 x)) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 (sin.f64 x) -1/2)))) (-.f64 (+.f64 (sin.f64 x) (*.f64 (sin.f64 eps) (cos.f64 x))) (sin.f64 x))))
(if (<=.f64 eps -8869050534349991/1024) (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (sin.f64 eps)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 -1/2 (sin.f64 x))))) (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (sin.f64 eps))))
(if (<=.f64 eps -8869050534349991/1024) (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (sin.f64 eps)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (+.f64 (*.f64 eps (cos.f64 x)) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 (sin.f64 x) -1/2)))) (fma.f64 (+.f64 (cos.f64 eps) -1) (sin.f64 x) (sin.f64 eps))))
(if (<=.f64 eps -8869050534349991/1024) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 -1/2 (sin.f64 x))))) (-.f64 (sin.f64 eps) (sin.f64 x))))
(if (<=.f64 eps -8869050534349991/1024) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (+.f64 (*.f64 eps (cos.f64 x)) (*.f64 (*.f64 eps eps) (+.f64 (*.f64 (cos.f64 x) (*.f64 eps -1/6)) (*.f64 (sin.f64 x) -1/2)))) (-.f64 (sin.f64 eps) (sin.f64 x))))
(if (<=.f64 eps -432167030260719/295147905179352825856) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (+.f64 (*.f64 (cos.f64 x) eps) (*.f64 (*.f64 eps eps) (*.f64 -1/2 (sin.f64 x)))) (-.f64 (sin.f64 eps) (sin.f64 x))))
(if (<=.f64 eps -432167030260719/295147905179352825856) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (+.f64 (*.f64 eps (cos.f64 x)) (*.f64 (*.f64 eps eps) (*.f64 (sin.f64 x) -1/2))) (-.f64 (sin.f64 eps) (sin.f64 x))))
(if (<=.f64 eps -432167030260719/295147905179352825856) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (*.f64 eps (+.f64 (cos.f64 x) (*.f64 (sin.f64 x) (*.f64 eps -1/2)))) (-.f64 (sin.f64 eps) (sin.f64 x))))
(if (<=.f64 eps -432167030260719/295147905179352825856) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (*.f64 (cos.f64 x) eps) (-.f64 (sin.f64 eps) (sin.f64 x))))
(if (<=.f64 eps -432167030260719/295147905179352825856) (-.f64 (sin.f64 eps) (sin.f64 x)) (if (<=.f64 eps 4756811826787173/147573952589676412928) (*.f64 eps (cos.f64 x)) (-.f64 (sin.f64 eps) (sin.f64 x))))
(if (<=.f64 eps -432167030260719/295147905179352825856) (sin.f64 eps) (if (<=.f64 eps 4756811826787173/147573952589676412928) (*.f64 (cos.f64 x) eps) (sin.f64 eps)))
(if (<=.f64 eps -432167030260719/295147905179352825856) (sin.f64 eps) (if (<=.f64 eps 4756811826787173/147573952589676412928) (*.f64 eps (cos.f64 x)) (sin.f64 eps)))
(sin.f64 eps)
eps
Compiler

Compiled 280 to 163 computations (41.8% saved)

soundness101.0ms (0.7%)

Algorithm
egg-herbie
Rules
588×sub-neg_binary64
513×distribute-neg-in_binary64
495×fma-def_binary64
396×*-commutative_binary64
384×+-commutative_binary64
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0831214
12411202
26531133
321161121
436991121
548481119
669021119
Stop Event
node limit
Compiler

Compiled 153 to 105 computations (31.4% saved)

end90.0ms (0.6%)

Compiler

Compiled 260 to 103 computations (60.4% saved)

Profiling

Loading profile data...